<?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:ProfileBase="http:///schemas/ProfileBase/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xsi:schemaLocation="http:///schemas/ProfileBase/1 ProfileBase.profile.uml#_xf7zN036EeSS5u8wdxTIGg">
  <uml:Profile xmi:id="_xgi5MU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" metamodelReference="_xhG44U36EeSS5u8wdxTIGg">
    <eAnnotations xmi:id="_xgi5Mk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML">
      <contents xmi:type="ecore:EPackage" xmi:id="_xgi5M036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_c0edEBYtEeSXUINbATJ7iA/335" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5NE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgi5OU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgi5NU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgi5Nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgi5N036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5OU36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgi5Ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgi5O036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgi5PE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5PU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5P036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgi5QE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgi5QU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgi5Qk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_role=Agent_Role::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_role &lt;> Agent_Role::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_role = Agent_Role::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgi5Q036EeSS5u8wdxTIGg" name="agent_role" ordered="false" eType="_xgi5UU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgi5RU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgi5R036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgi5SU36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgi5Vk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgi5S036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5TU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5T036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgi5UU36EeSS5u8wdxTIGg" name="Agent_Role">
          <eAnnotations xmi:id="_xgi5Uk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgi5U036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgi5VE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgi5VU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgi5Vk36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgi5V036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgi5WE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgi5WU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgi5Wk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5W036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgi5XE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgi5XU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgi5Xk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5X036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5YU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5Y036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgi5W036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgi5ZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgi5ZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgi5Zk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5aE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgi5W036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgi5aU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgi5ak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgi5a036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5bU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgi5bk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgi5b036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgi5cE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5cU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5c036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5dU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgi5bU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgi5dk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5eE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgi5bU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgi5eU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5ek36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgi5fE36EeSS5u8wdxTIGg" name="value" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5f036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgi5bU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgi5gE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5gk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgi5OU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgi5g036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgi5hE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgi5hU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::statement').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5h036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgi5iE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgi5iU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgi5ik36EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgi5i036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5jU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5j036EeSS5u8wdxTIGg" name="expression" abstract="true">
          <eAnnotations xmi:id="_xgi5kE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgi5kU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgi5kk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::statement')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5k036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5lU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5l036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgi5j036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgi5mE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgi5mU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgi5mk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5nE36EeSS5u8wdxTIGg" name="statement" eSuperTypes="_xgi5j036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgi5nU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgi5nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgi5n036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5oU36EeSS5u8wdxTIGg" name="flow">
          <eAnnotations xmi:id="_xgi5ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgi5o036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgi5pE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5pU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5p036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5qU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5q036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5rU36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xgi5sk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgi5rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5r036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5sk36EeSS5u8wdxTIGg" name="prescription" abstract="true">
          <eAnnotations xmi:id="_xgi5s036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5tE36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgi5tU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5tk36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5uE36EeSS5u8wdxTIGg" name="base_MergeNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//MergeNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5uk36EeSS5u8wdxTIGg" name="intermediate">
          <eAnnotations xmi:id="_xgi5u036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5vE36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5vk36EeSS5u8wdxTIGg" name="iterative" eSuperTypes="_xgi5sk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgi5v036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5wE36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5w036EeSS5u8wdxTIGg" name="iterator">
          <eAnnotations xmi:id="_xgi5xE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi5xU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5x036EeSS5u8wdxTIGg" name="update" eSuperTypes="_xgi5OU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgi5yE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfRU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgi5yU36EeSS5u8wdxTIGg" name="variable_to_update" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgi5y036EeSS5u8wdxTIGg" name="value" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgi5zk36EeSS5u8wdxTIGg" name="cumulative">
          <eAnnotations xmi:id="_xgi5z036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfUU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgi50E36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgjdcE36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_W9pzoBYtEeSXUINbATJ7iA/334" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjdcU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgjddk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjdck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjdc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjddE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjddk36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgjdd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjdeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjdeU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjdek36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjdfE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgjdfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjdfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjdf036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_role=Agent_Role::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_role &lt;> Agent_Role::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_role = Agent_Role::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjdgE36EeSS5u8wdxTIGg" name="agent_role" ordered="false" eType="_xgjdjk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjdgk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjdhE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjdhk36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgjdk036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjdiE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjdik36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjdjE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgjdjk36EeSS5u8wdxTIGg" name="Agent_Role">
          <eAnnotations xmi:id="_xgjdj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgjdkE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgjdkU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgjdkk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgjdk036EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgjdlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgjdlU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgjdlk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgjdl036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjdmE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgjdmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjdmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjdm036EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjdnE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjdnk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjdoE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgjdmE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjdoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjdok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjdo036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjdpU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgjdmE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjdpk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjdp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjdqE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjdqk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgjdq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjdrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjdrU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjdrk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjdsE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjdsk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgjdqk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjds036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjdtU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgjdqk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjdtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjdt036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjduU36EeSS5u8wdxTIGg" name="value" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjdvE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgjdqk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjdvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjdv036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgjddk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjdwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjdwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjdwk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::statement').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjdxE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgjdxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjdxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjdx036EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjdyE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjdyk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjdzE36EeSS5u8wdxTIGg" name="expression" abstract="true">
          <eAnnotations xmi:id="_xgjdzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjdzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjdz036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::statement')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjd0E36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjd0k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjd1E36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgjdzE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjd1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjd1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjd1036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjd2U36EeSS5u8wdxTIGg" name="statement" eSuperTypes="_xgjdzE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjd2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjd2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjd3E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjd3k36EeSS5u8wdxTIGg" name="flow">
          <eAnnotations xmi:id="_xgjd3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjd4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjd4U36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjd4k36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjd5E36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjd5k36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjd6E36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjd6k36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xgjd7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjd6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjd7E36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjd7036EeSS5u8wdxTIGg" name="prescription" abstract="true">
          <eAnnotations xmi:id="_xgjd8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjd8U36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgjd8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjd8036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjd9U36EeSS5u8wdxTIGg" name="base_MergeNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//MergeNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjd9036EeSS5u8wdxTIGg" name="intermediate">
          <eAnnotations xmi:id="_xgjd-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjd-U36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjd-036EeSS5u8wdxTIGg" name="iterative" eSuperTypes="_xgjd7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjd_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjd_U36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeAE36EeSS5u8wdxTIGg" name="iterator">
          <eAnnotations xmi:id="_xgjeAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjeAk36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeBE36EeSS5u8wdxTIGg" name="update" eSuperTypes="_xgjddk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjeBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfRU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjeBk36EeSS5u8wdxTIGg" name="variable_to_update" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjeCE36EeSS5u8wdxTIGg" name="value" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeC036EeSS5u8wdxTIGg" name="cumulative">
          <eAnnotations xmi:id="_xgjeDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfUU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjeDU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgjeD036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_3iI0QBRFEeShBoOA07i89Q/333" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeEE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgjeFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjeEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjeEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjeE036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeFU36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgjeFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjeF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjeGE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjeGU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeG036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgjeHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjeHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjeHk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_role=Agent_Role::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_role &lt;> Agent_Role::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_role = Agent_Role::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjeH036EeSS5u8wdxTIGg" name="agent_role" ordered="false" eType="_xgjeLU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjeIU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjeI036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjeJU36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgjeMk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjeJ036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjeKU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjeK036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgjeLU36EeSS5u8wdxTIGg" name="Agent_Role">
          <eAnnotations xmi:id="_xgjeLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgjeL036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgjeME36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgjeMU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgjeMk36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgjeM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgjeNE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgjeNU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgjeNk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeN036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgjeOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjeOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjeOk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjeO036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjePU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeP036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgjeN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjeQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjeQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjeQk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeRE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgjeN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjeRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjeRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjeR036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeSU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgjeSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjeS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjeTE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjeTU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjeT036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeUU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgjeSU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjeUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeVE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgjeSU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjeVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjeVk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeWU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgjeSU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjeWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeXE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgjeFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjeXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjeXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjeX036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::statement').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeYU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgjeYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjeY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjeZE36EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjeZU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjeZ036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeaU36EeSS5u8wdxTIGg" name="expression" abstract="true">
          <eAnnotations xmi:id="_xgjeak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjea036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjebE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::statement')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjebU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjeb036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjecU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgjeaU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjeck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjec036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjedE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjedk36EeSS5u8wdxTIGg" name="statement" eSuperTypes="_xgjeaU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjed036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjeeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjeeU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjee036EeSS5u8wdxTIGg" name="flow">
          <eAnnotations xmi:id="_xgjefE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjefU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjefk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjef036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjegU36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjeg036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjehU36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeh036EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xgjejE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjeiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjeiU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjejE36EeSS5u8wdxTIGg" name="prescription" abstract="true">
          <eAnnotations xmi:id="_xgjejU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjejk36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgjej036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjekE36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjekk36EeSS5u8wdxTIGg" name="base_MergeNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//MergeNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjelE36EeSS5u8wdxTIGg" name="intermediate">
          <eAnnotations xmi:id="_xgjelU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjelk36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjemE36EeSS5u8wdxTIGg" name="iterative" eSuperTypes="_xgjejE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjemU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjemk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjenU36EeSS5u8wdxTIGg" name="iterator">
          <eAnnotations xmi:id="_xgjenk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjen036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeoU36EeSS5u8wdxTIGg" name="update" eSuperTypes="_xgjeFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjeok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfRU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjeo036EeSS5u8wdxTIGg" name="variable_to_update" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjepU36EeSS5u8wdxTIGg" name="value" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeqE36EeSS5u8wdxTIGg" name="cumulative">
          <eAnnotations xmi:id="_xgjeqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfUU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjeqk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgjerE36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_6grgUBDUEeSlxfKrdGTz0g/332" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjerU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgjesk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjerk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjer036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjesE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjesk36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgjes036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjetE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjetU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjetk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjeuE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgjeuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjeuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjeu036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_role=Agent_Role::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_role &lt;> Agent_Role::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_role = Agent_Role::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjevE36EeSS5u8wdxTIGg" name="agent_role" ordered="false" eType="_xgjeyk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjevk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjewE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjewk36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgjez036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjexE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjexk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjeyE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgjeyk36EeSS5u8wdxTIGg" name="Agent_Role">
          <eAnnotations xmi:id="_xgjey036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgjezE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgjezU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgjezk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgjez036EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgje0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgje0U36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgje0k36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgje0036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgje1E36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgje1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgje1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgje1036EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgje2E36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgje2k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgje3E36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgje1E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgje3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgje3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgje3036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgje4U36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgje1E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgje4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgje4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgje5E36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgje5k36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgje5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgje6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgje6U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgje6k36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgje7E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgje7k36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgje5k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgje7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgje8U36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgje5k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgje8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgje8036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgje9k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgje5k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgje9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgje-U36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgjesk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgje-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgje-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgje_E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::statement').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgje_k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgje_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjfAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjfAU36EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjfAk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfBE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfBk36EeSS5u8wdxTIGg" name="expression" abstract="true">
          <eAnnotations xmi:id="_xgjfB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjfCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjfCU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::statement')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfCk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfDE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfDk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgjfBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjfD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjfEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjfEU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfE036EeSS5u8wdxTIGg" name="statement" eSuperTypes="_xgjfBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjfFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjfFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjfFk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfGE36EeSS5u8wdxTIGg" name="flow">
          <eAnnotations xmi:id="_xgjfGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjfGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjfG036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfHE36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfHk36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfIE36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfIk36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfJE36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xgjfKU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjfJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfJk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfKU36EeSS5u8wdxTIGg" name="prescription" abstract="true">
          <eAnnotations xmi:id="_xgjfKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfK036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgjfLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfLU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfL036EeSS5u8wdxTIGg" name="base_MergeNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//MergeNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfMU36EeSS5u8wdxTIGg" name="intermediate">
          <eAnnotations xmi:id="_xgjfMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfM036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfNU36EeSS5u8wdxTIGg" name="iterative" eSuperTypes="_xgjfKU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjfNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfN036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfOk36EeSS5u8wdxTIGg" name="iterator">
          <eAnnotations xmi:id="_xgjfO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfPE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfPk36EeSS5u8wdxTIGg" name="update" eSuperTypes="_xgjesk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjfP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfRU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjfQE36EeSS5u8wdxTIGg" name="variable_to_update" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjfQk36EeSS5u8wdxTIGg" name="value" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgjfRU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_KF0HoAzvEeSfmcr4dmwzCw/331" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfRk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgjfS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjfR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjfSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjfSU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfS036EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgjfTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjfTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjfTk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfT036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfUU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgjfUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjfU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjfVE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_role=Agent_Role::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_role &lt;> Agent_Role::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_role = Agent_Role::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjfVU36EeSS5u8wdxTIGg" name="agent_role" ordered="false" eType="_xgjfY036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjfV036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjfWU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjfW036EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgjfaE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjfXU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfX036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfYU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgjfY036EeSS5u8wdxTIGg" name="Agent_Role">
          <eAnnotations xmi:id="_xgjfZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgjfZU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgjfZk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgjfZ036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgjfaE36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgjfaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgjfak36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgjfa036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgjfbE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfbU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgjfbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjfb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjfcE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfcU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfc036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfdU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgjfbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjfdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjfd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjfeE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfek36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgjfbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjfe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjffE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjffU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjff036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgjfgE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjfgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjfgk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfg036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfhU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfh036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgjff036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjfiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfik36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgjff036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjfi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfjE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfj036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgjff036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjfkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfkk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgjfS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjfk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjflE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjflU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::statement').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfl036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgjfmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjfmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjfmk36EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjfm036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfnU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfn036EeSS5u8wdxTIGg" name="expression" abstract="true">
          <eAnnotations xmi:id="_xgjfoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjfoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjfok36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::statement')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfo036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfpU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfp036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgjfn036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjfqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjfqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjfqk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfrE36EeSS5u8wdxTIGg" name="statement" eSuperTypes="_xgjfn036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjfrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjfrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjfr036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfsU36EeSS5u8wdxTIGg" name="flow">
          <eAnnotations xmi:id="_xgjfsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjfs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjftE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjftU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjft036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfuU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfu036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfvU36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xgjfwk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjfvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfv036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfwk36EeSS5u8wdxTIGg" name="prescription" abstract="true">
          <eAnnotations xmi:id="_xgjfw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfxE36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgjfxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfxk36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfyE36EeSS5u8wdxTIGg" name="base_MergeNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//MergeNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfyk36EeSS5u8wdxTIGg" name="intermediate">
          <eAnnotations xmi:id="_xgjfy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjfzE36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjfzk36EeSS5u8wdxTIGg" name="iterative" eSuperTypes="_xgjfwk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjfz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjf0E36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjf0036EeSS5u8wdxTIGg" name="iterator">
          <eAnnotations xmi:id="_xgjf1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjf1U36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjf1036EeSS5u8wdxTIGg" name="update" eSuperTypes="_xgjfS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjf2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfRU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjf2U36EeSS5u8wdxTIGg" name="variable_to_update" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjf2036EeSS5u8wdxTIGg" name="value" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgjf3k36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_ecDT8AweEeSi5beOTV9HoQ/330" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjf3036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgjf5E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjf4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjf4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjf4k36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjf5E36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgjf5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjf5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjf5036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjf6E36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjf6k36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgjf6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjf7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjf7U36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_role=Agent_Role::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_role &lt;> Agent_Role::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_role = Agent_Role::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjf7k36EeSS5u8wdxTIGg" name="agent_role" ordered="false" eType="_xgjf_E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjf8E36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjf8k36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjf9E36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgjgAU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjf9k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjf-E36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjf-k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgjf_E36EeSS5u8wdxTIGg" name="Agent_Role">
          <eAnnotations xmi:id="_xgjf_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgjf_k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgjf_036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgjgAE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgjgAU36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgjgAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgjgA036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgjgBE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgjgBU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgBk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgjgB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjgCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjgCU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgCk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgDE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgDk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgjgBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjgD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjgEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjgEU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgE036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgjgBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjgFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjgFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjgFk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgGE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgjgGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjgGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjgG036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgHE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgHk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgIE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgjgGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjgIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgI036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgjgGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjgJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgJU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgKE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgjgGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjgKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgK036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgjf5E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjgLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjgLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjgLk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::statement').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgME36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgjgMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjgMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjgM036EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjgNE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgNk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgOE36EeSS5u8wdxTIGg" name="expression" abstract="true">
          <eAnnotations xmi:id="_xgjgOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjgOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjgO036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::statement')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgPE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgPk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgQE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgjgOE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjgQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjgQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjgQ036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgRU36EeSS5u8wdxTIGg" name="statement" eSuperTypes="_xgjgOE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjgRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjgR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjgSE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgSk36EeSS5u8wdxTIGg" name="flow">
          <eAnnotations xmi:id="_xgjgS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjgTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjgTU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgTk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgUE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgUk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgVE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgVk36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xgjgW036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjgV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgWE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgW036EeSS5u8wdxTIGg" name="prescription" abstract="true">
          <eAnnotations xmi:id="_xgjgXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgXU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgjgXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgX036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgYU36EeSS5u8wdxTIGg" name="base_MergeNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//MergeNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgY036EeSS5u8wdxTIGg" name="intermediate">
          <eAnnotations xmi:id="_xgjgZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgZU36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgZ036EeSS5u8wdxTIGg" name="iterative" eSuperTypes="_xgjgW036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjgaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgaU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgbE36EeSS5u8wdxTIGg" name="iterator">
          <eAnnotations xmi:id="_xgjgbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgbk36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgjgcE36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_dnAiUAweEeSi5beOTV9HoQ/329" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgcU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgjgdk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgjgck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjgc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjgdE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgdk36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgjgd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjgeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjgeU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgek36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgfE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgjgfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjgfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjgf036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_role=Agent_Role::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_role &lt;> Agent_Role::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_role = Agent_Role::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjggE36EeSS5u8wdxTIGg" name="agent_role" ordered="false" eType="_xgjgjk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjggk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjghE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjghk36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgjgk036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgjgiE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgik36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgjE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgjgjk36EeSS5u8wdxTIGg" name="Agent_Role">
          <eAnnotations xmi:id="_xgjgj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgjgkE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgjgkU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgjgkk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgjgk036EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgjglE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgjglU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgjglk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgjgl036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgjgmE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgjgmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgjgmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgjgm036EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgnE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgjgnk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkEgE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgjgmE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkEgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkEgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkEg036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkEhU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgjgmE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkEhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkEh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkEiE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkEik36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgkEi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkEjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkEjU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkEjk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkEkE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkEkk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgkEik36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkEk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkElU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgkEik36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkElk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkEl036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkEmk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgkEik36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkEm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkEnU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgjgdk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkEnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkEn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkEoE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::statement').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkEok36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgkEo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkEpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkEpU36EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkEpk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkEqE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkEqk36EeSS5u8wdxTIGg" name="expression" abstract="true">
          <eAnnotations xmi:id="_xgkEq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkErE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkErU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::statement')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkErk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkEsE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkEsk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgkEqk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkEs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkEtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkEtU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkEt036EeSS5u8wdxTIGg" name="statement" eSuperTypes="_xgkEqk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkEuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkEuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkEuk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkEvE36EeSS5u8wdxTIGg" name="flow">
          <eAnnotations xmi:id="_xgkEvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkEvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkEv036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkEwE36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkEwk36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkExE36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkExk36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkEyE36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xgkEzU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkEyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkEyk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkEzU36EeSS5u8wdxTIGg" name="prescription" abstract="true">
          <eAnnotations xmi:id="_xgkEzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkEz036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgkE0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkE0U36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkE0036EeSS5u8wdxTIGg" name="base_MergeNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//MergeNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkE1U36EeSS5u8wdxTIGg" name="intermediate">
          <eAnnotations xmi:id="_xgkE1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkE1036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkE2U36EeSS5u8wdxTIGg" name="iterative" eSuperTypes="_xgkEzU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkE2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkE2036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkE3k36EeSS5u8wdxTIGg" name="iterator">
          <eAnnotations xmi:id="_xgkE3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkE4E36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgkE4k36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_VV3ykAweEeSi5beOTV9HoQ/328" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkE4036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgkE6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkE5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkE5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkE5k36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkE6E36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgkE6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkE6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkE6036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkE7E36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkE7k36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgkE7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkE8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkE8U36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_role=Agent_Role::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_role &lt;> Agent_Role::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_role = Agent_Role::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkE8k36EeSS5u8wdxTIGg" name="agent_role" ordered="false" eType="_xgkFAE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkE9E36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkE9k36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkE-E36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgkFBU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkE-k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkE_E36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkE_k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgkFAE36EeSS5u8wdxTIGg" name="Agent_Role">
          <eAnnotations xmi:id="_xgkFAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgkFAk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgkFA036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgkFBE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgkFBU36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgkFBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgkFB036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgkFCE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgkFCU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFCk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgkFC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkFDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkFDU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFDk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFEE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFEk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgkFCk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkFE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkFFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkFFU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFF036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgkFCk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkFGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkFGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkFGk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFHE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgkFHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkFHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkFH036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFIE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFIk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFJE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgkFHE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkFJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFJ036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgkFHE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkFKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFKU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFLE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgkFHE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkFLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFL036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgkE6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkFME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkFMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkFMk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::statement').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFNE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgkFNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkFNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkFN036EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkFOE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFOk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFPE36EeSS5u8wdxTIGg" name="expression" abstract="true">
          <eAnnotations xmi:id="_xgkFPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkFPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkFP036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::statement')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFQE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFQk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFRE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgkFPE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkFRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkFRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkFR036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFSU36EeSS5u8wdxTIGg" name="statement" eSuperTypes="_xgkFPE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkFSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkFS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkFTE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFTk36EeSS5u8wdxTIGg" name="flow">
          <eAnnotations xmi:id="_xgkFT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkFUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkFUU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFUk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFVE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFVk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFWE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFWk36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xgkFX036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkFW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFXE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFX036EeSS5u8wdxTIGg" name="prescription" abstract="true">
          <eAnnotations xmi:id="_xgkFYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFYU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgkFYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFY036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFZU36EeSS5u8wdxTIGg" name="base_MergeNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//MergeNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFZ036EeSS5u8wdxTIGg" name="intermediate">
          <eAnnotations xmi:id="_xgkFaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFaU36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFa036EeSS5u8wdxTIGg" name="iterative" eSuperTypes="_xgkFX036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkFbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFbU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFcE36EeSS5u8wdxTIGg" name="iterator">
          <eAnnotations xmi:id="_xgkFcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFck36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgkFdE36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_ZQK6YAwdEeSi5beOTV9HoQ/327" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFdU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgkFek36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkFdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkFd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkFeE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFek36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgkFe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkFfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkFfU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFfk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFgE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgkFgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkFgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkFg036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_role=Agent_Role::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_role &lt;> Agent_Role::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_role = Agent_Role::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkFhE36EeSS5u8wdxTIGg" name="agent_role" ordered="false" eType="_xgkFkk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkFhk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkFiE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkFik36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgkFl036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkFjE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFjk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFkE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgkFkk36EeSS5u8wdxTIGg" name="Agent_Role">
          <eAnnotations xmi:id="_xgkFk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgkFlE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgkFlU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgkFlk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgkFl036EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgkFmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgkFmU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgkFmk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgkFm036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFnE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgkFnU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkFnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkFn036EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFoE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFok36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFpE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgkFnE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkFpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkFpk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkFp036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFqU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgkFnE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkFqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkFq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkFrE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFrk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgkFr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkFsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkFsU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFsk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFtE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFtk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgkFrk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkFt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFuU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgkFrk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkFuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFu036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFvk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgkFrk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkFv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFwU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgkFek36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkFwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkFw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkFxE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::statement').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFxk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgkFx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkFyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkFyU36EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkFyk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkFzE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkFzk36EeSS5u8wdxTIGg" name="expression" abstract="true">
          <eAnnotations xmi:id="_xgkFz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkF0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkF0U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::statement')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkF0k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkF1E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkF1k36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgkFzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkF1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkF2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkF2U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkF2036EeSS5u8wdxTIGg" name="statement" eSuperTypes="_xgkFzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkF3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkF3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkF3k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkF4E36EeSS5u8wdxTIGg" name="flow">
          <eAnnotations xmi:id="_xgkF4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkF4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkF4036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkF5E36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkF5k36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkF6E36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkF6k36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkF7E36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xgkF8U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkF7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkF7k36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkF8U36EeSS5u8wdxTIGg" name="prescription" abstract="true">
          <eAnnotations xmi:id="_xgkF8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkF8036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgkF9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkF9U36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkF9036EeSS5u8wdxTIGg" name="base_MergeNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//MergeNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkF-U36EeSS5u8wdxTIGg" name="intermediate">
          <eAnnotations xmi:id="_xgkF-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkF-036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkF_U36EeSS5u8wdxTIGg" name="iterative" eSuperTypes="_xgkF8U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkF_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkF_036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGAk36EeSS5u8wdxTIGg" name="iterator">
          <eAnnotations xmi:id="_xgkGA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGBE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgkGBk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_Q_FN8AwdEeSi5beOTV9HoQ/326" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGB036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgkGDE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkGCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkGCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkGCk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGDE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgkGDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkGDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkGD036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGEE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGEk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgkGE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkGFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkGFU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_role=Agent_Role::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_role &lt;> Agent_Role::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_role = Agent_Role::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkGFk36EeSS5u8wdxTIGg" name="agent_role" ordered="false" eType="_xgkGJE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkGGE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkGGk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkGHE36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgkGKU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkGHk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGIE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGIk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgkGJE36EeSS5u8wdxTIGg" name="Agent_Role">
          <eAnnotations xmi:id="_xgkGJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgkGJk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgkGJ036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgkGKE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgkGKU36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgkGKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgkGK036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgkGLE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgkGLU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGLk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgkGL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkGME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkGMU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGMk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGNE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGNk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgkGLk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkGN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkGOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkGOU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGO036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgkGLk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkGPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkGPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkGPk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGQE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgkGQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkGQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkGQ036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGRE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGRk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGSE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgkGQE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkGSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGS036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgkGQE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkGTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGTU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGUE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgkGQE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkGUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGU036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgkGDE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkGVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkGVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkGVk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::statement').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGWE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgkGWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkGWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkGW036EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkGXE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGXk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGYE36EeSS5u8wdxTIGg" name="expression" abstract="true">
          <eAnnotations xmi:id="_xgkGYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkGYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkGY036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::statement')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGZE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGZk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGaE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgkGYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkGaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkGak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkGa036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGbU36EeSS5u8wdxTIGg" name="statement" eSuperTypes="_xgkGYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkGbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkGb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkGcE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGck36EeSS5u8wdxTIGg" name="flow">
          <eAnnotations xmi:id="_xgkGc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkGdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkGdU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGdk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGeE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGek36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGfE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGfk36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xgkGg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkGf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGgE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGg036EeSS5u8wdxTIGg" name="prescription" abstract="true">
          <eAnnotations xmi:id="_xgkGhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGhU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgkGhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGh036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGiU36EeSS5u8wdxTIGg" name="base_MergeNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//MergeNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGi036EeSS5u8wdxTIGg" name="intermediate">
          <eAnnotations xmi:id="_xgkGjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGjU36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGj036EeSS5u8wdxTIGg" name="iterative" eSuperTypes="_xgkGg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkGkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGkU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGlE36EeSS5u8wdxTIGg" name="iterator">
          <eAnnotations xmi:id="_xgkGlU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGlk36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgkGmE36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_fVAD0HeiEeOevenns9-O-w/325" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGmU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgkGnk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkGmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkGm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkGnE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGnk36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgkGn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkGoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkGoU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGok36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGpE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgkGpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkGpk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkGp036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_role=Agent_Role::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_role &lt;> Agent_Role::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_role = Agent_Role::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkGqE36EeSS5u8wdxTIGg" name="agent_role" ordered="false" eType="_xgkGtk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkGqk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkGrE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkGrk36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgkGu036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkGsE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGsk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGtE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgkGtk36EeSS5u8wdxTIGg" name="Agent_Role">
          <eAnnotations xmi:id="_xgkGt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgkGuE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgkGuU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgkGuk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgkGu036EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgkGvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgkGvU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgkGvk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgkGv036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGwE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgkGwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkGwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkGw036EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGxE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkGxk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGyE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgkGwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkGyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkGyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkGy036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkGzU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgkGwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkGzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkGz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkG0E36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkG0k36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgkG0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkG1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkG1U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkG1k36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkG2E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkG2k36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgkG0k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkG2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkG3U36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgkG0k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkG3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkG3036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkG4k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgkG0k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkG4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkG5U36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgkGnk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkG5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkG5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkG6E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::statement').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkG6k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgkG6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkG7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkG7U36EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkG7k36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkG8E36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkG8k36EeSS5u8wdxTIGg" name="expression" abstract="true">
          <eAnnotations xmi:id="_xgkG8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkG9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkG9U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::statement')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkG9k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkG-E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkG-k36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgkG8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkG-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkG_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkG_U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkG_036EeSS5u8wdxTIGg" name="statement" eSuperTypes="_xgkG8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkHAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkHAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkHAk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHBE36EeSS5u8wdxTIGg" name="flow">
          <eAnnotations xmi:id="_xgkHBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkHBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkHB036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHCE36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHCk36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHDE36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHDk36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHEE36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xgkHFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkHEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHEk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHFU36EeSS5u8wdxTIGg" name="prescription" abstract="true">
          <eAnnotations xmi:id="_xgkHFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHF036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgkHGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHGU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHG036EeSS5u8wdxTIGg" name="intermediate">
          <eAnnotations xmi:id="_xgkHHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHHU36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHH036EeSS5u8wdxTIGg" name="iterative" eSuperTypes="_xgkHFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkHIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHIU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHJE36EeSS5u8wdxTIGg" name="iterator">
          <eAnnotations xmi:id="_xgkHJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHJk36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgkHKE36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_cMhP8HeiEeOevenns9-O-w/324" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHKU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgkHLk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkHKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkHK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkHLE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHLk36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgkHL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkHME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkHMU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHMk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHNE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgkHNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkHNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkHN036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_role=Agent_Role::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_role &lt;> Agent_Role::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_type = Agent_Role::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkHOE36EeSS5u8wdxTIGg" name="agent_role" ordered="false" eType="_xgkHRk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkHOk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkHPE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkHPk36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgkHS036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkHQE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHQk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHRE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgkHRk36EeSS5u8wdxTIGg" name="Agent_Role">
          <eAnnotations xmi:id="_xgkHR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgkHSE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgkHSU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgkHSk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgkHS036EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgkHTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgkHTU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgkHTk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgkHT036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHUE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgkHUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkHUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkHU036EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHVE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHVk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHWE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgkHUE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkHWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkHWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkHW036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHXU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgkHUE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkHXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkHX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkHYE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHYk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgkHY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkHZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkHZU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHZk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHaE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHak36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgkHYk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkHa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHbU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgkHYk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkHbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHb036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHck36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgkHYk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkHc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHdU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgkHLk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkHdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkHd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkHeE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::statement').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHek36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgkHe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkHfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkHfU36EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkHfk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHgE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHgk36EeSS5u8wdxTIGg" name="expression" abstract="true">
          <eAnnotations xmi:id="_xgkHg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkHhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkHhU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::statement')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHhk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHiE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHik36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgkHgk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkHi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkHjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkHjU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHj036EeSS5u8wdxTIGg" name="statement" eSuperTypes="_xgkHgk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkHkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkHkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkHkk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHlE36EeSS5u8wdxTIGg" name="flow">
          <eAnnotations xmi:id="_xgkHlU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkHlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkHl036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHmE36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHmk36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHnE36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkHnk36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkHoE36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xgkrk036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkHoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkrkE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkrk036EeSS5u8wdxTIGg" name="prescription" abstract="true">
          <eAnnotations xmi:id="_xgkrlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkrlU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgkrlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkrl036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkrmU36EeSS5u8wdxTIGg" name="intermediate">
          <eAnnotations xmi:id="_xgkrmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkrm036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkrnU36EeSS5u8wdxTIGg" name="iterative" eSuperTypes="_xgkrk036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkrnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkrn036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkrok36EeSS5u8wdxTIGg" name="iterator">
          <eAnnotations xmi:id="_xgkro036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkrpE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgkrpk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_ZHpwwHeiEeOevenns9-O-w/323" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkrp036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgkrrE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkrqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkrqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkrqk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkrrE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgkrrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkrrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkrr036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkrsE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkrsk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgkrs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkrtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkrtU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Role::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Role::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_type = Agent_Role::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkrtk36EeSS5u8wdxTIGg" name="agent_role" ordered="false" eType="_xgkrxE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkruE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkruk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkrvE36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgkryU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkrvk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkrwE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkrwk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgkrxE36EeSS5u8wdxTIGg" name="Agent_Role">
          <eAnnotations xmi:id="_xgkrxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgkrxk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgkrx036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgkryE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgkryU36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgkryk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgkry036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgkrzE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgkrzU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkrzk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgkrz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkr0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkr0U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkr0k36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkr1E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkr1k36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgkrzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkr1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkr2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkr2U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkr2036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgkrzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkr3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkr3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkr3k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkr4E36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgkr4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkr4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkr4036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkr5E36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkr5k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkr6E36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgkr4E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkr6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkr6036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgkr4E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkr7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkr7U36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkr8E36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgkr4E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkr8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkr8036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgkrrE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkr9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkr9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkr9k36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::statement').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkr-E36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgkr-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkr-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkr-036EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkr_E36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkr_k36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksAE36EeSS5u8wdxTIGg" name="expression" abstract="true">
          <eAnnotations xmi:id="_xgksAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgksAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgksA036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::statement')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksBE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksBk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksCE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgksAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgksCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgksCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgksC036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksDU36EeSS5u8wdxTIGg" name="statement" eSuperTypes="_xgksAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgksDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgksD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgksEE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksEk36EeSS5u8wdxTIGg" name="flow">
          <eAnnotations xmi:id="_xgksE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgksFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgksFU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksFk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksGE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksGk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksHE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksHk36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xgksI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgksH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksIE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksI036EeSS5u8wdxTIGg" name="prescription" abstract="true">
          <eAnnotations xmi:id="_xgksJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksJU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgksJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksJ036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksKU36EeSS5u8wdxTIGg" name="intermediate">
          <eAnnotations xmi:id="_xgksKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksK036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksLU36EeSS5u8wdxTIGg" name="iterative" eSuperTypes="_xgksI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgksLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksL036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksMk36EeSS5u8wdxTIGg" name="iterator">
          <eAnnotations xmi:id="_xgksM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksNE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgksNk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_MVzO4HeiEeOevenns9-O-w/322" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksN036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgksPE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgksOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgksOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgksOk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksPE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgksPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgksPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgksP036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksQE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksQk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgksQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgksRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgksRU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgksRk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgksVE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgksSE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgksSk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgksTE36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgksWU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgksTk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksUE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksUk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgksVE36EeSS5u8wdxTIGg" name="Agent_Role">
          <eAnnotations xmi:id="_xgksVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgksVk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgksV036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgksWE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgksWU36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgksWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgksW036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgksXE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgksXU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksXk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgksX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgksYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgksYU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksYk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksZE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksZk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgksXk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgksZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgksaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgksaU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksa036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgksXk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgksbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgksbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgksbk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkscE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgkscU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgksck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgksc036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksdE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksdk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkseE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgkscE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkseU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkse036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgkscE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgksfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksfU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksgE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgkscE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgksgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksg036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgksPE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkshE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkshU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkshk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::statement').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksiE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgksiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgksik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgksi036EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgksjE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksjk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkskE36EeSS5u8wdxTIGg" name="expression" abstract="true">
          <eAnnotations xmi:id="_xgkskU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkskk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgksk036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::statement')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkslE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkslk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksmE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgkskE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgksmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgksmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgksm036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksnU36EeSS5u8wdxTIGg" name="statement" eSuperTypes="_xgkskE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgksnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgksn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgksoE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksok36EeSS5u8wdxTIGg" name="flow">
          <eAnnotations xmi:id="_xgkso036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkspE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkspU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkspk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksqE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksqk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksrE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksrk36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xgkss036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgksr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkssE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkss036EeSS5u8wdxTIGg" name="prescription" abstract="true">
          <eAnnotations xmi:id="_xgkstE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkstU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgkstk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkst036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksuU36EeSS5u8wdxTIGg" name="intermediate">
          <eAnnotations xmi:id="_xgksuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksu036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksvU36EeSS5u8wdxTIGg" name="iterative" eSuperTypes="_xgkss036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgksvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksv036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkswk36EeSS5u8wdxTIGg" name="iterator">
          <eAnnotations xmi:id="_xgksw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgksxE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgksxk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_49U-UHehEeOevenns9-O-w/321" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgksx036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgkszE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgksyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgksyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgksyk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkszE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgkszU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkszk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgksz036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgks0E36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgks0k36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgks0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgks1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgks1U36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgks1k36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgks5E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgks2E36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgks2k36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgks3E36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgks6U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgks3k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgks4E36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgks4k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgks5E36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgks5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgks5k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgks5036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgks6E36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgks6U36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgks6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgks6036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgks7E36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgks7U36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgks7k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgks7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgks8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgks8U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgks8k36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgks9E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgks9k36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgks7k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgks9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgks-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgks-U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgks-036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgks7k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgks_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgks_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgks_k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktAE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgktAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgktA036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktBE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktBk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktCE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgktAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgktCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktC036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgktAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgktDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktDU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktEE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgktAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgktEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktE036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgkszE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgktFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgktFk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::statement').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktGE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgktGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgktG036EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgktHE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktHk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktIE36EeSS5u8wdxTIGg" name="expression" abstract="true">
          <eAnnotations xmi:id="_xgktIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgktI036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::statement')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktJE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktJk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktKE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgktIE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgktKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgktK036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktLU36EeSS5u8wdxTIGg" name="statement" eSuperTypes="_xgktIE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgktLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgktME36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktMk36EeSS5u8wdxTIGg" name="flow">
          <eAnnotations xmi:id="_xgktM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgktNU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktNk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktOE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktOk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktPE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktPk36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xgktQ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgktP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktQE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktQ036EeSS5u8wdxTIGg" name="prescription" abstract="true">
          <eAnnotations xmi:id="_xgktRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktRU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgktRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktR036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktSU36EeSS5u8wdxTIGg" name="intermediate">
          <eAnnotations xmi:id="_xgktSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktS036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktTU36EeSS5u8wdxTIGg" name="iterative" eSuperTypes="_xgktQ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgktTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktT036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktUk36EeSS5u8wdxTIGg" name="iterator">
          <eAnnotations xmi:id="_xgktU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktVE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgktVk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_ZVPywHegEeOevenns9-O-w/320" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktV036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgktXE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgktWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgktWk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktXE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgktXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgktX036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktYE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktYk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgktY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgktZU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgktZk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgktdE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgktaE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgktak36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgktbE36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgkteU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgktbk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktcE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktck36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgktdE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgktdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgktdk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgktd036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgkteE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgkteU36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgktek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgkte036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgktfE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgktfU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktfk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgktf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktgE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgktgU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktgk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkthE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkthk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgktfk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkth036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgktiU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkti036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgktfk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgktjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgktjk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktkE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgktkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgktk036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktlE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktlk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktmE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgktkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgktmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktm036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgktkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgktnE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktnU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktoE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgktkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgktoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkto036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgktXE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgktpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgktpk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::statement').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktqE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgktqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgktq036EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgktrE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktrk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktsE36EeSS5u8wdxTIGg" name="expression" abstract="true">
          <eAnnotations xmi:id="_xgktsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkts036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::statement')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkttE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkttk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktuE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgktsE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgktuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgktu036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktvU36EeSS5u8wdxTIGg" name="statement" eSuperTypes="_xgktsE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgktvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgktwE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktwk36EeSS5u8wdxTIGg" name="flow">
          <eAnnotations xmi:id="_xgktw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgktxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgktxU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktxk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktyE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktyk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgktzE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgktzk36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xgkt0036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgktz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkt0E36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkt0036EeSS5u8wdxTIGg" name="provision" abstract="true">
          <eAnnotations xmi:id="_xgkt1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkt1U36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgkt1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkt1036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkt2U36EeSS5u8wdxTIGg" name="intermediate">
          <eAnnotations xmi:id="_xgkt2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkt2036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkt3U36EeSS5u8wdxTIGg" name="iterative" eSuperTypes="_xgkt0036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkt3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkt3036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkt4k36EeSS5u8wdxTIGg" name="iterator">
          <eAnnotations xmi:id="_xgkt4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkt5E36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgkt5k36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_FdK1EHegEeOevenns9-O-w/319" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkt5036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgkt7E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkt6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkt6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkt6k36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkt7E36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgkt7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkt7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkt7036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkt8E36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkt8k36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgkt8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkt9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkt9U36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkt9k36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgkuBE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkt-E36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkt-k36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkt_E36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgkuCU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkt_k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkuAE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkuAk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgkuBE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgkuBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgkuBk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgkuB036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgkuCE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgkuCU36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgkuCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgkuC036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgkuDE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgkuDU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkuDk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgkuD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkuEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkuEU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkuEk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkuFE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkuFk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgkuDk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkuF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkuGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkuGU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkuG036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgkuDk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkuHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkuHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkuHk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkuIE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgkuIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkuIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkuI036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkuJE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkuJk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkuKE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgkuIE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkuKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkuK036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgkuIE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkuLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkuLU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkuME36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgkuIE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkuMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkuM036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgkt7E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkuNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkuNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkuNk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::statement').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkuOE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgkuOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkuOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkuO036EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkuPE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkuPk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkuQE36EeSS5u8wdxTIGg" name="expression" abstract="true">
          <eAnnotations xmi:id="_xgkuQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkuQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkuQ036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkuRE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkuRk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkuSE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgkuQE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkuSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkuSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkuS036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkuTU36EeSS5u8wdxTIGg" name="statement" eSuperTypes="_xgkuQE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkuTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkuT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkuUE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkuUk36EeSS5u8wdxTIGg" name="flow">
          <eAnnotations xmi:id="_xgkuU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkuVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkuVU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkuVk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkuWE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkuWk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkuXE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkuXk36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xgkuY036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkuX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkuYE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkuY036EeSS5u8wdxTIGg" name="provision" abstract="true">
          <eAnnotations xmi:id="_xgkuZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkuZU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgkuZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkuZ036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkuaU36EeSS5u8wdxTIGg" name="intermediate">
          <eAnnotations xmi:id="_xgkuak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkua036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkubU36EeSS5u8wdxTIGg" name="iterative" eSuperTypes="_xgkuY036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkubk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkub036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkuck36EeSS5u8wdxTIGg" name="iterator">
          <eAnnotations xmi:id="_xgkuc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkudE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgkudk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_7SP5MHefEeOevenns9-O-w/318" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkud036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgkufE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgkueE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkueU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkuek36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkufE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgkufU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkufk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkuf036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgkugE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgkugk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgkug036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgkuhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgkuhU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkuhk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xglSqE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkuiE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgkuik36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglSoE36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xglSrU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglSok36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglSpE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglSpk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xglSqE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xglSqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xglSqk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xglSq036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xglSrE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xglSrU36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xglSrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xglSr036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xglSsE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xglSsU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglSsk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xglSs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglStE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglStU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglStk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglSuE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglSuk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xglSsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglSu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglSvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglSvU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglSv036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xglSsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglSwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglSwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglSwk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglSxE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xglSxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglSxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglSx036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglSyE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglSyk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglSzE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xglSxE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglSzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglSz036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xglSxE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglS0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglS0U36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglS1E36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xglSxE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglS1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglS1036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgkufE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglS2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglS2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglS2k36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglS3E36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xglS3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglS3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglS3036EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglS4E36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglS4k36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglS5E36EeSS5u8wdxTIGg" name="expression" abstract="true">
          <eAnnotations xmi:id="_xglS5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglS5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglS5036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglS6E36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglS6k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglS7E36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xglS5E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglS7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglS7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglS7036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglS8U36EeSS5u8wdxTIGg" name="statement" eSuperTypes="_xglS5E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglS8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglS8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglS9E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglS9k36EeSS5u8wdxTIGg" name="flow">
          <eAnnotations xmi:id="_xglS9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglS-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglS-U36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglS-k36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglS_E36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglS_k36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTAE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTAk36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xglTB036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglTA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTBE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTB036EeSS5u8wdxTIGg" name="prescription" abstract="true">
          <eAnnotations xmi:id="_xglTCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTCU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xglTCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTC036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTDU36EeSS5u8wdxTIGg" name="intermediate">
          <eAnnotations xmi:id="_xglTDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTD036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTEU36EeSS5u8wdxTIGg" name="iterative" eSuperTypes="_xglTB036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglTEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTE036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTFk36EeSS5u8wdxTIGg" name="iterator">
          <eAnnotations xmi:id="_xglTF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTGE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xglTGk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_xrbv8HefEeOevenns9-O-w/317" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTG036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xglTIE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglTHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglTHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglTHk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTIE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xglTIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglTIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglTI036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTJE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTJk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xglTJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglTKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglTKU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglTKk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xglTOE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglTLE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglTLk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglTME36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xglTPU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglTMk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTNE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTNk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xglTOE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xglTOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xglTOk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xglTO036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xglTPE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xglTPU36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xglTPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xglTP036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xglTQE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xglTQU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTQk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xglTQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglTRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglTRU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTRk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTSE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTSk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xglTQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglTS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglTTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglTTU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTT036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xglTQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglTUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglTUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglTUk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTVE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xglTVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglTVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglTV036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTWE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTWk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTXE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xglTVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglTXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTX036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xglTVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglTYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTYU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTZE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xglTVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglTZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTZ036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xglTIE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglTaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglTaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglTak36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTbE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xglTbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglTbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglTb036EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglTcE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTck36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTdE36EeSS5u8wdxTIGg" name="expression" abstract="true">
          <eAnnotations xmi:id="_xglTdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglTdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglTd036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTeE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTek36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTfE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xglTdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglTfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglTfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglTf036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTgU36EeSS5u8wdxTIGg" name="statement" eSuperTypes="_xglTdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglTgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglTg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglThE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglThk36EeSS5u8wdxTIGg" name="flow">
          <eAnnotations xmi:id="_xglTh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglTiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglTiU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTik36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTjE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTjk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTkE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTkk36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xglTl036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglTk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTlE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTl036EeSS5u8wdxTIGg" name="legal_procedure" abstract="true">
          <eAnnotations xmi:id="_xglTmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTmU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xglTmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTm036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTnU36EeSS5u8wdxTIGg" name="intermediate">
          <eAnnotations xmi:id="_xglTnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTn036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglToU36EeSS5u8wdxTIGg" name="iterative" eSuperTypes="_xglTl036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglTok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTo036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTpk36EeSS5u8wdxTIGg" name="iterator">
          <eAnnotations xmi:id="_xglTp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTqE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xglTqk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_OC5-QFw1EeOqqeCPduFc4Q/316" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTq036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xglTsE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglTrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglTrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglTrk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTsE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xglTsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglTsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglTs036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTtE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglTtk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xglTt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglTuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglTuU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglTuk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xglTyE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglTvE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglTvk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglTwE36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xglTzU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglTwk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTxE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglTxk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xglTyE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xglTyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xglTyk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xglTy036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xglTzE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xglTzU36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xglTzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xglTz036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xglT0E36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xglT0U36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglT0k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xglT0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglT1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglT1U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglT1k36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglT2E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglT2k36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xglT0k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglT2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglT3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglT3U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglT3036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xglT0k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglT4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglT4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglT4k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglT5E36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xglT5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglT5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglT5036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglT6E36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglT6k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglT7E36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xglT5E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglT7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglT7036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xglT5E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglT8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglT8k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xglT5E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglT8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglT9U36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xglTsE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglT9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglT9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglT-E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglT-k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xglT-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglT_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglT_U36EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglT_k36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUAE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUAk36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xglUA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglUBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglUBU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUBk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUCE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUCk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xglUAk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglUC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglUDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglUDU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUD036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xglUAk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglUEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglUEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglUEk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUFE36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xglUFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglUFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglUF036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUGE36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUGk36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUHE36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUHk36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUIE36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xglUJU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglUIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUIk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUJU36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xglUJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUJ036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xglUKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUKU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUK036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xglULE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglULU36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUL036EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xglUJU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglUME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUMU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUNE36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xglUNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUNk36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xglUOE36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_wwhZYFwgEeOqqeCPduFc4Q/315" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUOU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xglUPk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglUOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglUO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglUPE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUPk36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xglUP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglUQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglUQU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUQk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglURE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xglURU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglURk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglUR036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglUSE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xglUVk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglUSk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglUTE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglUTk36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xglUW036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglUUE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUUk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUVE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xglUVk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xglUV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xglUWE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xglUWU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xglUWk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xglUW036EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xglUXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xglUXU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xglUXk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xglUX036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUYE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xglUYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglUYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglUY036EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUZE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUZk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUaE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xglUYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglUaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglUak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglUa036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUbU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xglUYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglUbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglUb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglUcE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUck36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xglUc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglUdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglUdU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUdk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUeE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUek36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xglUck36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglUe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUfU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xglUck36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglUfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUgE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xglUck36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglUgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUg036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xglUPk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglUhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglUhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglUhk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUiE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xglUiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglUik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglUi036EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglUjE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUjk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUkE36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xglUkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglUkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglUk036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUlE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUlk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUmE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xglUkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglUmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglUmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglUm036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUnU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xglUkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglUnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglUn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglUoE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUok36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xglUo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglUpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglUpU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUpk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUqE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUqk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUrE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUrk36EeSS5u8wdxTIGg" name="procedure" eSuperTypes="_xglUs036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglUr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUsE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUs036EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xglUtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUtU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xglUtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUt036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUuU36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xglUuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUu036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUvU36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xglUs036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglUvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUv036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUwk36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xglUw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglUxE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xglUxk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/__Hbj8FhDEeOUB9owB90Z8A/314" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUx036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xglUzE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglUyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglUyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglUyk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglUzE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xglUzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglUzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglUz036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglU0E36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglU0k36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xglU0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglU1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglU1U36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglU1k36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xglU5E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglU2E36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglU2k36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglU3E36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xglU6U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglU3k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglU4E36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglU4k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xglU5E36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xglU5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xglU5k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xglU5036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xglU6E36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xglU6U36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xglU6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xglU6036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xglU7E36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xglU7U36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglU7k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xglU7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglU8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglU8U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglU8k36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglU9E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglU9k36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xglU7k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglU9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglU-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglU-U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglU-036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xglU7k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglU_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglU_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglU_k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVAE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xglVAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglVAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglVA036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglVBE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglVBk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVCE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xglVAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglVCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVC036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xglVAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglVDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVDk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xglVAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglVD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVEU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xglUzE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglVEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglVE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglVFE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVFk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xglVF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglVGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglVGU36EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglVGk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglVHE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVHk36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xglVH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglVIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglVIU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglVIk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglVJE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVJk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xglVHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglVJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglVKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglVKU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVK036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xglVHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglVLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglVLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglVLk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVME36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xglVMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglVMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglVM036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglVNE36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglVNk36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglVOE36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglVOk36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVPE36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xglVQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglVPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglVPk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVQU36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xglVQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVQ036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xglVRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglVRU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVR036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xglVSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglVSU36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVS036EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xglVQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglVTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglVTU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVUE36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xglVUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglVUk36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xglVVE36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_ueWjwFhBEeOUB9owB90Z8A/313" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVVU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xglVWk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xglVVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglVV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglVWE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVWk36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xglVW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglVXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglVXU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglVXk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVYE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xglVYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xglVYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xglVY036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglVZE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xglVck36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglVZk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglVaE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglVak36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xglVd036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xglVbE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglVbk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xglVcE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xglVck36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xglVc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xglVdE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xglVdU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xglVdk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xglVd036EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xglVeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xglVeU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xglVek36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xglVe036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xglVfE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgl5sE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl5sU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl5sk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl5s036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl5tU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl5t036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xglVfE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl5uE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl5uU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl5uk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl5vE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xglVfE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl5vU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl5vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl5v036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl5wU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgl5wk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl5w036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl5xE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl5xU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl5x036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl5yU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgl5wU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl5yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl5zE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgl5wU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl5zU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl5z036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgl5wU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl50E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl50k36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xglVWk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl50036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl51E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl51U36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl51036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgl52E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl52U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl52k36EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl52036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl53U36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl53036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgl54E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl54U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl54k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl54036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl55U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl55036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgl53036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl56E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl56U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl56k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl57E36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgl53036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl57U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl57k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl57036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl58U36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgl58k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl58036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl59E36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl59U36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl59036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl5-U36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl5-036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl5_U36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgl6Ak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl5_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl5_036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6Ak36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgl6A036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6BE36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgl6BU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6Bk36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6CE36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgl6CU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6Ck36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6DE36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgl6Ak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl6DU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6Dk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6EU36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgl6Ek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6E036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgl6FU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_FhTXcFhBEeOUB9owB90Z8A/312" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6Fk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgl6G036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl6F036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl6GE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl6GU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6G036EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgl6HE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl6HU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl6Hk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6H036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6IU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgl6Ik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl6I036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl6JE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl6JU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgl6M036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl6J036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl6KU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl6K036EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgl6OE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl6LU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6L036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6MU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgl6M036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgl6NE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgl6NU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgl6Nk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgl6N036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgl6OE36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgl6OU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgl6Ok36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgl6O036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgl6PE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6PU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgl6Pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl6P036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl6QE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6QU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6Q036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6RU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgl6PU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl6Rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl6R036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl6SE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6Sk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgl6PU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl6S036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl6TE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl6TU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6T036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgl6UE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl6UU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl6Uk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6U036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6VU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6V036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgl6T036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl6WE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6Wk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgl6T036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl6W036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6XU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgl6T036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl6Xk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6YE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgl6G036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl6YU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl6Yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl6Y036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6ZU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgl6Zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl6Z036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl6aE36EeSS5u8wdxTIGg" key="documentation" value="not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6aU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl6a036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6bU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6b036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgl6cE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl6cU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl6ck36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6c036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6dU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6d036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgl6b036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl6eE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl6eU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl6ek36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6fE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgl6b036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl6fU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl6fk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl6f036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6gU36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgl6gk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl6g036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl6hE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6hU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6h036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6iU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6i036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6jU36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgl6kk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl6jk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6j036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6kk36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgl6k036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6lE36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgl6lU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6lk36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6mE36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgl6mU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6mk36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6nE36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgl6kk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl6nU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6nk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6oU36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgl6ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6o036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgl6pU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_fS23wFeCEeO1uoHYOW5LKA/311" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6pk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgl6q036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl6p036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl6qE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl6qU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6q036EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgl6rE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl6rU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl6rk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6r036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6sU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgl6sk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl6s036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl6tE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl6tU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgl6w036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl6t036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl6uU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl6u036EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgl6yE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl6vU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6v036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6wU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgl6w036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgl6xE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgl6xU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgl6xk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgl6x036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgl6yE36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgl6yU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgl6yk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgl6y036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgl6zE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6zU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgl6zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl6z036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl60E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl60U36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl60036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl61U36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgl6zU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl61k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl61036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl62E36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl62k36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgl6zU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl62036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl63E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl63U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl63036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgl64E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl64U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl64k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl64036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl65U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl65036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgl63036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl66E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl66k36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgl63036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl66036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl67U36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgl63036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl67k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl68E36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgl6q036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl68U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl68k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl68036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl69U36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgl69k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl69036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl6-E36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6-U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl6-036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl6_U36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl6_036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgl7AE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7AU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7Ak36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7A036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7BU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7B036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgl6_036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl7CE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7CU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7Ck36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7DE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgl6_036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl7DU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7Dk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7D036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7EU36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgl7Ek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7E036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7FE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7FU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7F036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7GU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7G036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7HU36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgl7Ik36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl7Hk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7H036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7Ik36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgl7I036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7JE36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgl7JU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7Jk36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7KE36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgl7KU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7Kk36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7LE36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgl7Ik36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl7LU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7Lk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7MU36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgl7Mk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7M036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgl7NU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_p1f8oFdtEeO1uoHYOW5LKA/310" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7Nk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgl7O036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl7N036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7OE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7OU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7O036EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgl7PE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7PU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7Pk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7P036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7QU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgl7Qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7Q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7RE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl7RU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgl7U036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl7R036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl7SU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl7S036EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgl7WE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl7TU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7T036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7UU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgl7U036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgl7VE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgl7VU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgl7Vk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgl7V036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgl7WE36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgl7WU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgl7Wk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgl7W036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgl7XE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7XU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgl7Xk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7X036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7YE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7YU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7Y036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7ZU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgl7XU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl7Zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7Z036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7aE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7ak36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgl7XU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl7a036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7bE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7bU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7b036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgl7cE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7cU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7ck36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7c036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7dU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7d036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgl7b036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl7eE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7ek36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgl7b036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl7e036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7fU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgl7b036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl7fk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7gE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgl7O036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl7gU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7gk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7g036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7hU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgl7hk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7h036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7iE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7iU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl7i036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7jU36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgl7jk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7j036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7kE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7kU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7k036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7lU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgl7jU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl7lk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7l036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7mE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7mk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgl7jU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl7m036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7nE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7nU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7n036EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgl7oE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7oU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7ok36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7o036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7pU36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7p036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7qU36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7q036EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgl7sE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl7rE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7rU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7sE36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgl7sU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7sk36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgl7s036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7tE36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7tk36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgl7t036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7uE36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7uk36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgl7sE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl7u036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7vE36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7v036EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgl7wE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7wU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgl7w036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_logXwFdtEeO1uoHYOW5LKA/309" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7xE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgl7yU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl7xU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7xk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7x036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7yU36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgl7yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7y036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7zE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl7zU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7z036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgl70E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl70U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl70k36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl70036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgl74U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl71U36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl71036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl72U36EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgl75k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl72036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl73U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl73036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgl74U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgl74k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgl74036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgl75E36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgl75U36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgl75k36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgl75036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgl76E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgl76U36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgl76k36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl76036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgl77E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl77U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl77k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl77036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl78U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl78036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgl76036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl79E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl79U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl79k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7-E36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgl76036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl7-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl7-036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl7_U36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgl7_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl7_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8AE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8AU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8A036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8BU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgl7_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl8Bk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8CE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgl7_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl8CU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8C036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgl7_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl8DE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8Dk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgl7yU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl8D036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl8EE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8EU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8E036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgl8FE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl8FU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8Fk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8F036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl8GU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8G036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgl8HE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl8HU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8Hk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8H036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8IU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8I036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgl8G036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl8JE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl8JU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8Jk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8KE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgl8G036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl8KU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl8Kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8K036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8LU36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgl8Lk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl8L036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8ME36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8MU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8M036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8NU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8N036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8OU36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgl8Pk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl8Ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8O036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8Pk36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgl8P036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8QE36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgl8QU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8Qk36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8RE36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgl8RU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8Rk36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8SE36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgl8Pk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl8SU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8Sk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8TU36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgl8Tk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8T036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgl8UU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_aeJYIFdtEeO1uoHYOW5LKA/308" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8Uk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgl8V036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl8U036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl8VE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8VU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8V036EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgl8WE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl8WU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8Wk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8W036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8XU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgl8Xk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl8X036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8YE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl8YU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgl8b036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl8Y036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl8ZU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl8Z036EeSS5u8wdxTIGg" name="value_type" ordered="false" eType="_xgl8dE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl8aU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8a036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8bU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgl8b036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgl8cE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgl8cU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgl8ck36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgl8c036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgl8dE36EeSS5u8wdxTIGg" name="Value_Type">
          <eAnnotations xmi:id="_xgl8dU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgl8dk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgl8d036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgl8eE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8eU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgl8ek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl8e036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8fE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8fU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8f036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8gU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgl8eU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl8gk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl8g036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8hE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8hk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgl8eU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl8h036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl8iE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8iU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8i036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgl8jE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl8jU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8jk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8j036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8kU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8k036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgl8i036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl8lE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8lk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgl8i036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl8l036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8mU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgl8i036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl8mk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8nE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgl8V036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl8nU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl8nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8n036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8oU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgl8ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl8o036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8pE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8pU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgl8p036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8qU36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgl8qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl8q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8rE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8rU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8r036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8sU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgl8qU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl8sk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl8s036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8tE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8tk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgl8qU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl8t036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl8uE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8uU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8u036EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgl8vE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgl8vU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgl8vk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8v036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8wU36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8w036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8xU36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8x036EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgl8zE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl8yE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl8yU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8zE36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgl8zU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl8zk36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgl8z036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl80E36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl80k36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgl80036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl81E36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl81k36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgl8zE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgl81036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl82E36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgl82036EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgl83E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgl83U36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgl83036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_0R6ooFLBEeOx7rZCF5ouIw/307" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmgwE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgmgxU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmgwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmgwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmgw036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmgxU36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgmgxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmgx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmgyE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmgyU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmgy036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgmgzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmgzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmgzk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmgz036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgmg3U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmg0U36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmg0036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmg1U36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgmg4k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmg1036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmg2U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmg2036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgmg3U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgmg3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgmg3036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgmg4E36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgmg4U36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgmg4k36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgmg4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgmg5E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgmg5U36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgmg5k36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmg5036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgmg6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmg6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmg6k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmg6036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmg7U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmg7036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgmg5036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmg8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmg8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmg8k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmg9E36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgmg5036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmg9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmg9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmg9036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmg-U36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgmg-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmg-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmg_E36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmg_U36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmg_036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhAU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgmg-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmhAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhBE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgmg-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmhBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhB036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgmg-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmhCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhCk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgmgxU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmhC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmhDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmhDU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhD036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgmhEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmhEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmhEk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhE036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmhFU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhF036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgmhGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmhGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmhGk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhG036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhHU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhH036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgmhF036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmhIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmhIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmhIk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhJE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgmhF036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmhJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmhJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmhJ036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhKU36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgmhKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmhK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmhLE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhLU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhL036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhMU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhM036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhNU36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgmhOk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmhNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhN036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhOk36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgmhO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhPE36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgmhPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhPk36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhQE36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgmhQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhQk36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhRE36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgmhOk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmhRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhRk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhSU36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgmhSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhS036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgmhTU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_oiZP0FKoEeOx7rZCF5ouIw/306" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhTk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgmhU036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmhT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmhUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmhUU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhU036EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgmhVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmhVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmhVk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhV036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhWU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgmhWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmhW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmhXE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmhXU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgmha036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmhX036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmhYU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmhY036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgmhcE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmhZU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhZ036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhaU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgmha036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgmhbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgmhbU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgmhbk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgmhb036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgmhcE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgmhcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgmhck36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgmhc036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgmhdE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhdU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgmhdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmhd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmheE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmheU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhe036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhfU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgmhdU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmhfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmhf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmhgE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhgk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgmhdU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmhg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmhhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmhhU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhh036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgmhiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmhiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmhik36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhi036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhjU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhj036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgmhh036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmhkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhkk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgmhh036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmhk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhlU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgmhh036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmhlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhmE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgmhU036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmhmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmhmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmhm036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhnU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgmhnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmhn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmhoE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhoU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmho036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhpU36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgmhpk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmhp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmhqE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhqU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhq036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhrU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgmhpU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmhrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmhr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmhsE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhsk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgmhpU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmhs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmhtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmhtU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmht036EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgmhuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmhuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmhuk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhu036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhvU36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhv036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhwU36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhw036EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgmhyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmhxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhxU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhyE36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgmhyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhyk36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgmhy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmhzE36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmhzk36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgmhz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmh0E36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmh0k36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgmhyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmh0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmh1E36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmh1036EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgmh2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmh2U36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgmh2036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_cdsH0FKoEeOx7rZCF5ouIw/305" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmh3E36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgmh4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmh3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmh3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmh3036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmh4U36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgmh4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmh4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmh5E36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmh5U36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmh5036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgmh6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmh6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmh6k36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0 &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmh6036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgmh-U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmh7U36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmh7036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmh8U36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgmh_k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmh8036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmh9U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmh9036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgmh-U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgmh-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgmh-036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgmh_E36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgmh_U36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgmh_k36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgmh_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgmiAE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgmiAU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgmiAk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiA036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgmiBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmiBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmiBk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmiB036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmiCU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiC036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgmiA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmiDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmiDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmiDk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiEE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgmiA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmiEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmiEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmiE036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiFU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgmiFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmiF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmiGE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmiGU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmiG036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiHU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgmiFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmiHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiIE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgmiFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmiIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiI036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgmiFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmiJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiJk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgmh4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmiJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmiKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmiKU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiK036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgmiLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmiLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmiLk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmiL036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmiMU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiM036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgmiNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmiNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmiNk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmiN036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmiOU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiO036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgmiM036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmiPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmiPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmiPk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiQE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgmiM036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmiQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmiQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmiQ036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiRU36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgmiRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmiR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmiSE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmiSU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmiS036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmiTU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmiT036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiUU36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgmiVk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmiUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmiU036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiVk36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgmiV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiWE36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgmiWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmiWk36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiXE36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgmiXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmiXk36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiYE36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgmiVk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmiYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmiYk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiZU36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgmiZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmiZ036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgmiaU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_XnEXIFKoEeOx7rZCF5ouIw/304" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiak36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgmib036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmia036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmibE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmibU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmib036EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgmicE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmicU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmick36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmic036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmidU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgmidk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmid036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmieE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmieU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgmih036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmie036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmifU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmif036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgmijE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmigU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmig036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmihU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgmih036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgmiiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgmiiU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgmiik36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgmii036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgmijE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgmijU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgmijk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgmij036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgmikE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmikU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgmikk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmik036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmilE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmilU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmil036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmimU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgmikU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmimk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmim036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgminE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmink36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgmikU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmin036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmioE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmioU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmio036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgmipE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmipU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmipk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmip036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmiqU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiq036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgmio036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmirE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmirk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgmio036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmir036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmisU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgmio036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmisk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmitE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgmib036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmitU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmitk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmit036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiuU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgmiuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmiu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmivE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmivU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmiv036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiwU36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgmiwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmiw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmixE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmixU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmix036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmiyU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgmiwU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmiyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmiy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmizE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmizk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgmiwU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmiz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmi0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmi0U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmi0036EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgmi1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmi1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmi1k36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmi1036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmi2U36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmi2036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmi3U36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmi3036EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgmi5E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmi4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmi4U36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmi5E36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgmi5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmi5k36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgmi5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmi6E36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmi6k36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgmi6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmi7E36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmi7k36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgmi5E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmi7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmi8E36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmi8036EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgmi9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmi9U36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgmi9036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_SbYVYFKoEeOx7rZCF5ouIw/303" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmi-E36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgmi_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmi-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmi-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmi-036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmi_U36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgmi_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmi_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmjAE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjAU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjA036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgmjBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmjBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmjBk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmjB036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgmjFU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmjCU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmjC036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmjDU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgmjGk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmjD036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjEU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjE036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgmjFU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgmjFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgmjF036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgmjGE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgmjGU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgmjGk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgmjG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgmjHE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgmjHU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgmjHk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjH036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgmjIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmjIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmjIk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjI036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjJU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjJ036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgmjH036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmjKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmjKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmjKk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjLE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgmjH036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmjLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmjLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmjL036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjMU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgmjMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmjM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmjNE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjNU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjN036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjOU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgmjMU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmjOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjPE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgmjMU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmjPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjP036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgmjMU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmjQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjQk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgmi_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmjQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmjRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmjRU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjR036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgmjSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmjSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmjSk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjS036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmjTU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjT036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgmjUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmjUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmjUk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjU036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjVU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjV036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgmjT036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmjWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmjWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmjWk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjXE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgmjT036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmjXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmjXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmjX036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjYU36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgmjYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmjY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmjZE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjZU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjZ036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjaU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmja036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjbU36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgmjck36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmjbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjb036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjck36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgmjc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjdE36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgmjdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjdk36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjeE36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgmjeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjek36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjfE36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgmjck36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmjfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjfk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjgU36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgmjgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjg036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgmjhU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_MepRMFKoEeOx7rZCF5ouIw/302" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjhk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgmji036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmjh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmjiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmjiU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmji036EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgmjjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmjjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmjjk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjj036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjkU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgmjkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmjk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmjlE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmjlU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgmjo036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmjl036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmjmU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmjm036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgmjqE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmjnU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjn036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjoU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgmjo036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgmjpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgmjpU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgmjpk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgmjp036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgmjqE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgmjqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgmjqk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgmjq036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgmjrE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjrU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgmjrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmjr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmjsE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjsU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjs036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjtU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgmjrU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmjtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmjt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmjuE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjuk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgmjrU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmju036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmjvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmjvU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjv036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgmjwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmjwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmjwk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjw036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmjxU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjx036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgmjv036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmjyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjyk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgmjv036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmjy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmjzU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgmjv036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmjzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmj0E36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgmji036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmj0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmj0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmj0036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmj1U36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgmj1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmj1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmj2E36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmj2U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgmj2036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmj3U36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgmj3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmj3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmj4E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmj4U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmj4036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmj5U36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgmj3U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmj5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmj5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmj6E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmj6k36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgmj3U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmj6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmj7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmj7U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmj7036EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgmj8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgmj8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgmj8k36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmj8036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmj9U36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmj9036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmj-U36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmj-036EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgmkAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgmj_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgmj_U36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgmkAE36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgmkAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnH0E36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgnH0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnH0k36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnH1E36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgnH1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnH1k36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnH2E36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgmkAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnH2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnH2k36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnH3U36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgnH3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnH3036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgnH4U36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_1xMB0FKnEeOx7rZCF5ouIw/301" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnH4k36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgnH5036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnH4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnH5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnH5U36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnH5036EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgnH6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnH6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnH6k36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnH6036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnH7U36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgnH7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnH7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnH8E36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnH8U36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgnH_036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnH8036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnH9U36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnH9036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgnIBE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnH-U36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnH-036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnH_U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnH_036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgnIAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnIAU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnIAk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgnIA036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnIBE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgnIBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnIBk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnIB036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgnICE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnICU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgnICk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnIC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnIDE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIDU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnID036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIEU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgnICU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnIEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnIE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnIFE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIFk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgnICU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnIF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnIGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnIGU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIG036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgnIHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnIHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnIHk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIH036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIIU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnII036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgnIG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnIJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIJk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgnIG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnIJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIKU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgnIG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnIKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnILE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgnH5036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnILU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnILk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnIL036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIMU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgnIMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnIM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnINE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnINU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnIN036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIOU36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgnIOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnIO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnIPE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIPU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIP036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIQU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgnIOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnIQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnIQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnIRE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIRk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgnIOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnIR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnISE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnISU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIS036EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgnITE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnITU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnITk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIT036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIUU36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIU036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIVU36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIV036EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgnIXE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnIWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIWU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIXE36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgnIXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIXk36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgnIX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIYE36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIYk36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgnIY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIZE36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIZk36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgnIXE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnIZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIaE36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIa036EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgnIbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIbU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgnIb036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_0D-5IFKnEeOx7rZCF5ouIw/300" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIcE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgnIdU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnIcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnIck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnIc036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIdU36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgnIdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnId036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnIeE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIeU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIe036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgnIfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnIfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnIfk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size()>=1 and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnIf036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgnIjU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnIgU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnIg036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnIhU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgnIkk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnIh036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIiU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIi036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnIjU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgnIjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnIj036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnIkE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgnIkU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnIkk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgnIk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnIlE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnIlU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgnIlk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIl036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgnImE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnImU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnImk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIm036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnInU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIn036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgnIl036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnIoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnIoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnIok36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIpE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgnIl036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnIpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnIpk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnIp036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIqU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgnIqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnIq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnIrE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIrU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIr036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIsU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgnIqU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnIsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnItE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgnIqU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnItU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIt036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgnIqU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnIuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIuk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgnIdU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnIu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnIvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnIvU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIv036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgnIwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnIwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnIwk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIw036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnIxU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIx036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgnIyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnIyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnIyk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIy036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnIzU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnIz036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgnIx036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnI0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnI0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnI0k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnI1E36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgnIx036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnI1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnI1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnI1036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnI2U36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgnI2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnI2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnI3E36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnI3U36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnI3036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnI4U36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnI4036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnI5U36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgnI6k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnI5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnI5036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnI6k36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgnI6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnI7E36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgnI7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnI7k36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnI8E36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgnI8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnI8k36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnI9E36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgnI6k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnI9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnI9k36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnI-U36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgnI-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnI-036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgnI_U36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_oZqnEFKnEeOx7rZCF5ouIw/299" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnI_k36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgnJA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnI_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJAU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJA036EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgnJBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJBk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJB036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJCU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgnJCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJDE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size()>1 and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnJDU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgnJG036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnJD036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnJEU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnJE036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgnJIE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnJFU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJF036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJGU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnJG036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgnJHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnJHU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnJHk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgnJH036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnJIE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgnJIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnJIk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnJI036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgnJJE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJJU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgnJJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJKE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJKU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJK036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJLU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgnJJU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnJLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJME36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJMk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgnJJU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnJM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJNU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJN036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgnJOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJOk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJO036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJPU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJP036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgnJN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnJQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJQk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgnJN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnJQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJRU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgnJN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnJRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJSE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgnJA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnJSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJS036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJTU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgnJTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJUE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJUU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnJU036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJVU36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgnJVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJWE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJWU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJW036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJXU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgnJVU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnJXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJYE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJYk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgnJVU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnJY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJZU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJZ036EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgnJaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJak36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJa036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJbU36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJb036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJcU36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJc036EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgnJeE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnJdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJdU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJeE36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgnJeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJek36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgnJe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJfE36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJfk36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgnJf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJgE36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJgk36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgnJeE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnJg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJhE36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJh036EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgnJiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJiU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgnJi036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_PwZLQFKnEeOx7rZCF5ouIw/298" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJjE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgnJkU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnJjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJj036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJkU36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgnJkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJlE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJlU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJl036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgnJmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJmk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question.size()>1&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnJm036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgnJqU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnJnU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnJn036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnJoU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgnJrk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnJo036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJpU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJp036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnJqU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgnJqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnJq036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnJrE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgnJrU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnJrk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgnJr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnJsE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnJsU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgnJsk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJs036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgnJtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJtk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJt036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJuU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJu036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgnJs036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnJvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJvk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJwE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgnJs036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnJwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJw036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJxU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgnJxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJyE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJyU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJy036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJzU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgnJxU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnJzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJ0E36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgnJxU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnJ0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJ0036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgnJxU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnJ1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJ1k36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgnJkU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnJ1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJ2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJ2U36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJ2036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgnJ3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJ3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJ3k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJ3036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnJ4U36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJ4036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgnJ5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJ5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJ5k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJ5036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJ6U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJ6036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgnJ4036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnJ7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJ7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJ7k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJ8E36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgnJ4036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnJ8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJ8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJ8036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnJ9U36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgnJ9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnJ9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnJ-E36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJ-U36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJ-036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJ_U36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnJ_036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKAU36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgnKBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnKAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKA036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKBk36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgnKB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKCE36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgnKCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKCk36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKDE36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgnKDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKDk36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKEE36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgnKBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnKEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKEk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKFU36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgnKFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKF036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgnKGU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_58L4EFKmEeOx7rZCF5ouIw/297" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKGk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgnKH036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnKG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnKHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnKHU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKH036EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgnKIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnKIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnKIk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKI036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKJU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgnKJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnKJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnKKE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;true&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnKKU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgnKN036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnKK036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnKLU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnKL036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgnKPE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnKMU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKM036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKNU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnKN036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgnKOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnKOU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnKOk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgnKO036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnKPE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgnKPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnKPk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnKP036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgnKQE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKQU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgnKQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnKQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnKRE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKRU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKR036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKSU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgnKQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnKSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnKS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnKTE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKTk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgnKQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnKT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnKUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnKUU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKU036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgnKVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnKVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnKVk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKV036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKWU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKW036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgnKU036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnKXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKXk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgnKU036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnKX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKYU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgnKU036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnKYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKZE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgnKH036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnKZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnKZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnKZ036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKaU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgnKak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnKa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnKbE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKbU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnKb036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKcU36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgnKck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnKc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnKdE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKdU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKd036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKeU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgnKcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnKek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnKe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnKfE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKfk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgnKcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnKf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnKgE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnKgU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKg036EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgnKhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnKhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnKhk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKh036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKiU36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKi036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKjU36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKj036EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgnKlE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnKkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKkU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKlE36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgnKlU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKlk36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgnKl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKmE36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKmk36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgnKm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKnE36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKnk36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgnKlE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnKn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKoE36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKo036EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgnKpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKpU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgnKp036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_iVmQAFKgEeOx7rZCF5ouIw/296" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKqE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgnKrU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnKqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnKqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnKq036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKrU36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgnKrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnKr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnKsE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKsU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKs036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgnKtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnKtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnKtk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnKt036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgnKxU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnKuU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnKu036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnKvU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgnKyk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnKv036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKwU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnKw036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnKxU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgnKxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnKx036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnKyE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgnKyU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnKyk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgnKy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnKzE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnKzU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgnKzk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnKz036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgnK0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnK0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnK0k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() &#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnK0036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnK1U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnK1036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgnKz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnK2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnK2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnK2k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnK3E36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgnKz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnK3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnK3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnK3036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnK4U36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgnK4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnK4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnK5E36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnK5U36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnK5036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnK6U36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgnK4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnK6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnK7E36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgnK4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnK7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnK7036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgnK4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnK8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnu4E36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgnKrU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnu4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnu4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnu4036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnu5U36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgnu5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnu5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnu6E36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnu6U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnu6036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnu7U36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgnu7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnu7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnu8E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnu8U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnu8036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnu9U36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgnu7U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnu9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnu9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnu-E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnu-k36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgnu7U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnu-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnu_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnu_U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnu_036EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgnvAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnvAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnvAk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvA036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvBU36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvB036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvCU36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvC036EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgnvEE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnvDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvDU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvEE36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgnvEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvEk36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgnvE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvFE36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvFk36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgnvF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvGE36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvGk36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgnvEE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnvG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvHE36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvH036EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgnvIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvIU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgnvI036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_LKZ7wFKgEeOx7rZCF5ouIw/295" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvJE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgnvKU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnvJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnvJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnvJ036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvKU36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgnvKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnvK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnvLE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvLU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvL036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgnvME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnvMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnvMk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnvM036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgnvQU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnvNU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnvN036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnvOU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgnvRk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnvO036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvPU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvP036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnvQU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgnvQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnvQ036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnvRE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgnvRU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnvRk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgnvR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnvSE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnvSU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgnvSk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvS036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgnvTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnvTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnvTk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvT036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvUU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvU036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgnvS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnvVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnvVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnvVk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvWE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgnvS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnvWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnvWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnvW036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvXU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgnvXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnvX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnvYE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvYU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvY036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvZU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgnvXU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnvZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvaE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgnvXU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnvaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnva036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgnvXU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnvbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvbk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgnvKU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnvb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnvcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnvcU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvc036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgnvdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnvdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnvdk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvd036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnveU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnve036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgnvfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnvfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnvfk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvf036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvgU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvg036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgnve036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnvhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnvhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnvhk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnviE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgnve036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnviU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnvik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnvi036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvjU36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgnvjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnvj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnvkE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvkU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvk036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvlU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvl036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvmU36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgnvnk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnvmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvm036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvnk36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgnvn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvoE36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgnvoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvok36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvpE36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgnvpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvpk36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvqE36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgnvnk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnvqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvqk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvrU36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgnvrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvr036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgnvsU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_Y5BdUFKfEeOx7rZCF5ouIw/294" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvsk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgnvt036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnvs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnvtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnvtU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvt036EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgnvuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnvuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnvuk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvu036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnvvU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgnvvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnvv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnvwE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnvwU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgnvz036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnvw036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnvxU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnvx036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgnv1E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnvyU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvy036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnvzU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnvz036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgnv0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnv0U36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnv0k36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgnv0036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnv1E36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgnv1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnv1k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnv1036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgnv2E36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnv2U36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgnv2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnv2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnv3E36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnv3U36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnv3036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnv4U36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgnv2U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnv4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnv4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnv5E36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnv5k36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgnv2U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnv5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnv6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnv6U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnv6036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgnv7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnv7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnv7k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnv7036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnv8U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnv8036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgnv6036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnv9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnv9k36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgnv6036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnv9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnv-U36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgnv6036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnv-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnv_E36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgnvt036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnv_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnv_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnv_036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwAU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgnwAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnwA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnwBE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwBU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnwB036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwCU36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgnwCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnwC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnwDE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwDU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwD036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwEU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgnwCU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnwEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnwE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnwFE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwFk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgnwCU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnwF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnwGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnwGU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwG036EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgnwHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnwHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnwHk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwH036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwIU36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwI036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwJU36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwJ036EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgnwLE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnwKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwKU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwLE36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgnwLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwLk36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgnwL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwME36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwMk36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgnwM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwNE36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwNk36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgnwLE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnwN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwOE36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwO036EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgnwPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwPU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgnwP036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_UntZIFKfEeOx7rZCF5ouIw/293" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwQE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgnwRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnwQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnwQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnwQ036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwRU36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgnwRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnwR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnwSE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwSU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwS036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgnwTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnwTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnwTk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnwT036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgnwXU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnwUU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnwU036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnwVU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgnwYk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnwV036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwWU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwW036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnwXU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgnwXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnwX036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnwYE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgnwYU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnwYk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgnwY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnwZE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnwZU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgnwZk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwZ036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgnwaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnwaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnwak36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwa036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwbU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwb036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgnwZ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnwcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnwcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnwck36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwdE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgnwZ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnwdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnwdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnwd036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnweU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgnwek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnwe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnwfE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size()>=1&#xA;&#x9;&#x9;&#xA;&#x9;-- and el.oclAsType(uml::ActivityParameterNode).name = object_node.name&#xA;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwfU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwf036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwgU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgnweU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnwgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwhE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgnweU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnwhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwh036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgnweU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnwiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwik36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgnwRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnwi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnwjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnwjU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwj036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgnwkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnwkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnwkk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwk036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnwlU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwl036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgnwmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnwmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnwmk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwm036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwnU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwn036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgnwl036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnwoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnwoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnwok36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwpE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgnwl036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnwpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnwpk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnwp036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwqU36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgnwqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnwq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnwrE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwrU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwr036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwsU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnws036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwtU36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgnwuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnwtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwt036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwuk36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgnwu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwvE36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgnwvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwvk36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwwE36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgnwwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwwk36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwxE36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgnwuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnwxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwxk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwyU36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgnwyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnwy036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgnwzU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_MRWLIFKfEeOx7rZCF5ouIw/292" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnwzk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgnw0036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnwz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnw0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnw0U36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnw0036EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgnw1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnw1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnw1k36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnw1036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnw2U36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgnw2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnw2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnw3E36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnw3U36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgnw6036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnw3036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnw4U36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnw4036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgnw8E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnw5U36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnw5036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnw6U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnw6036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgnw7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnw7U36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnw7k36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgnw7036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnw8E36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgnw8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnw8k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnw8036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgnw9E36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnw9U36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgnw9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnw9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnw-E36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnw-U36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnw-036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnw_U36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgnw9U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnw_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnw_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxAE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxAk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgnw9U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnxA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxBU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxB036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgnxCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxCk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName() = object_node.qualifiedName()))->size()>1&#xA;&#x9;&#xA;&#x9;-- and el.oclAsType(uml::ActivityParameterNode).name = object_node.name&#xA;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxC036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxDU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxD036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgnxB036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnxEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxEk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgnxB036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnxE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxFU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgnxB036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnxFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxGE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgnw0036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnxGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxG036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxHU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgnxHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxIE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxIU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnxI036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxJU36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgnxJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxKE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxKU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxK036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxLU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgnxJU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnxLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxME36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxMk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgnxJU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnxM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxNU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxN036EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgnxOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxOk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxO036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxPU36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxP036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxQU36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxQ036EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgnxSE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnxRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxRU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxSE36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgnxSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxSk36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgnxS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxTE36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxTk36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgnxT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxUE36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxUk36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgnxSE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnxU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxVE36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxV036EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgnxWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxWU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgnxW036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_tFnu8FKeEeOx7rZCF5ouIw/291" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxXE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgnxYU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnxXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxX036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxYU36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgnxYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxZE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxZU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxZ036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgnxaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxak36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnxa036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgnxeU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnxbU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnxb036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnxcU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgnxfk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnxc036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxdU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxd036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnxeU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgnxek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnxe036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnxfE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgnxfU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgnxfk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgnxf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgnxgE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgnxgU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgnxgk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxg036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgnxhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxhk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxh036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxiU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxi036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgnxg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnxjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxjk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxkE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgnxg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnxkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxk036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxlU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgnxlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxmE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName()= object_node.qualifiedName()))->size() >1&#xA;&#x9;-- and el.oclAsType(uml::ActivityParameterNode).name = object_node.name&#xA;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxmU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxm036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxnU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgnxlU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnxnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxoE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgnxlU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnxoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxo036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgnxlU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnxpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxpk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgnxYU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnxp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxqU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxq036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgnxrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxrk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxr036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgnxsU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxs036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgnxtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxtk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxt036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxuU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxu036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgnxs036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnxvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxvk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxwE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgnxs036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnxwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxw036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnxxU36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgnxxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgnxx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgnxyE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxyU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxy036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxzU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnxz036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnx0U36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgnx1k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgnx0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnx0036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnx1k36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgnx1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnx2E36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgnx2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgnx2k36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgnx3E36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgoV8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoV8U36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoV8036EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgnx1k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoV9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoV9U36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoV-E36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgoV-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoV-k36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgoV_E36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_Y-wHUFKeEeOx7rZCF5ouIw/290" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoV_U36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgoWAk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoV_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoV_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWAE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWAk36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgoWA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoWBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWBU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWBk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWCE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgoWCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoWCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWC036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoWDE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgoWGk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoWDk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoWEE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoWEk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgoWH036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoWFE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWFk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWGE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgoWGk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgoWG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgoWHE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgoWHU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgoWHk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgoWH036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgoWIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgoWIU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgoWIk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgoWI036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWJE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgoWJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoWJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWJ036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWKE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWKk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWLE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgoWJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoWLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoWLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWL036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWMU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgoWJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoWMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoWM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWNE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWNk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgoWN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoWOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWOU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).getLabel() = object_node.getLabel()))->size() >1&#xA;&#x9;-- and el.oclAsType(uml::ActivityParameterNode).name = object_node.name&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWOk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWPE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWPk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgoWNk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoWP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWQU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgoWNk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoWQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWRE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgoWNk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoWRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWR036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgoWAk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoWSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoWSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWSk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWTE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgoWTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoWTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWT036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWUE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoWUk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWVE36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgoWVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoWVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWV036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWWE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWWk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWXE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgoWVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoWXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoWXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWX036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWYU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgoWVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoWYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoWY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWZE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWZk36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgoWZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoWaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWaU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWak36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWbE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWbk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWcE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWck36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgoWd036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoWc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWdE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWd036EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgoWeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWeU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgoWek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWe036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWfU36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgoWfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWf036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWgU36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgoWd036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoWgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWg036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWhk36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgoWh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWiE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgoWik36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_Ne0gUFKeEeOx7rZCF5ouIw/289" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWi036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgoWkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoWjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoWjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWjk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWkE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgoWkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoWkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWk036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWlE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWlk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgoWl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoWmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWmU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoWmk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgoWqE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoWnE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoWnk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoWoE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgoWrU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoWok36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWpE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWpk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgoWqE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgoWqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgoWqk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgoWq036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgoWrE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgoWrU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgoWrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgoWr036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgoWsE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgoWsU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWsk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgoWs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoWtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWtU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWtk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWuE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWuk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgoWsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoWu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoWvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWvU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWv036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgoWsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoWwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoWwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWwk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWxE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgoWxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoWxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoWx036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode) = object_node))->size() >1&#xA;&#x9;-- and el.oclAsType(uml::ActivityParameterNode).name = object_node.name&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWyE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoWyk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWzE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgoWxE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoWzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoWz036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgoWxE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoW0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoW0k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgoWxE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoW0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoW1U36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgoWkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoW1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoW1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoW2E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoW2k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgoW2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoW3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoW3U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoW3k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoW4E36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoW4k36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgoW4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoW5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoW5U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoW5k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoW6E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoW6k36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgoW4k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoW6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoW7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoW7U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoW7036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgoW4k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoW8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoW8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoW8k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoW9E36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgoW9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoW9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoW9036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoW-E36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoW-k36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoW_E36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoW_k36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXAE36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgoXBU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoXAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXAk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXBU36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgoXBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXB036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgoXCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXCU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXC036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgoXDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXDU36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXD036EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgoXBU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoXEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXEU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXFE36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgoXFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXFk36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgoXGE36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_LwQswFKeEeOx7rZCF5ouIw/288" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXGU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgoXHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoXGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoXG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoXHE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXHk36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgoXH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoXIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoXIU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXIk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXJE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgoXJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoXJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoXJ036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoXKE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgoXNk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoXKk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoXLE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoXLk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgoXO036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoXME36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXMk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXNE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgoXNk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgoXN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgoXOE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgoXOU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgoXOk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgoXO036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgoXPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgoXPU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgoXPk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgoXP036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXQE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgoXQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoXQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoXQ036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXRE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXRk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXSE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgoXQE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoXSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoXSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoXS036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXTU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgoXQE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoXTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoXT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoXUE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXUk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgoXU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoXVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoXVU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode) = object_node))->size() >1&#xA;&#x9;-- and el.oclAsType(uml::ActivityParameterNode).name = object_node.name&#xA;&#xA;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXVk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXWE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXWk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgoXUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoXW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXXU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgoXUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoXXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXYE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgoXUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoXYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXY036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgoXHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoXZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoXZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoXZk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXaE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgoXaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoXak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoXa036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXbE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoXbk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXcE36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgoXcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoXck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoXc036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXdE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXdk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXeE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgoXcE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoXeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoXek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoXe036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXfU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgoXcE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoXfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoXf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoXgE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXgk36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgoXg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoXhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoXhU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXhk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXiE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXik36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXjE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXjk36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgoXk036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoXj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXkE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXk036EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgoXlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXlU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgoXlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXl036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXmU36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgoXmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXm036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXnU36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgoXk036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoXnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXn036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXok36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgoXo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXpE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgoXpk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_8g8p8FKdEeOx7rZCF5ouIw/287" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXp036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgoXrE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoXqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoXqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoXqk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXrE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgoXrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoXrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoXr036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXsE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXsk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgoXs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoXtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoXtU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoXtk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgoXxE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoXuE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoXuk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoXvE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgoXyU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoXvk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXwE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoXwk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgoXxE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgoXxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgoXxk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgoXx036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgoXyE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgoXyU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgoXyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgoXy036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgoXzE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgoXzU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoXzk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgoXz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoX0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoX0U36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoX0k36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoX1E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoX1k36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgoXzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoX1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoX2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoX2U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoX2036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgoXzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoX3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoX3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoX3k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoX4E36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgoX4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoX4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoX4036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode)))->size() >1&#xA;&#x9;-- and el.oclAsType(uml::ActivityParameterNode).name = object_node.name&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoX5E36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoX5k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoX6E36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgoX4E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoX6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoX6036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgoX4E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoX7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoX7k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgoX4E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoX7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoX8U36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgoXrE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoX8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoX8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoX9E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoX9k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgoX9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoX-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoX-U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoX-k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoX_E36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoX_k36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgoX_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoYAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoYAU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYAk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYBE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYBk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgoX_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoYB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoYCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoYCU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYC036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgoX_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoYDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoYDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoYDk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYEE36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgoYEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoYEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoYE036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYFE36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYFk36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYGE36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYGk36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYHE36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgoYIU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoYHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYHk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYIU36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgoYIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYI036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgoYJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYJU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYJ036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgoYKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYKU36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYK036EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgoYIU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoYLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYLU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYME36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgoYMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYMk36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgoYNE36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_7H9dwFKdEeOx7rZCF5ouIw/286" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYNU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgoYOk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoYNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoYN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoYOE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYOk36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgoYO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoYPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoYPU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYPk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYQE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgoYQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoYQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoYQ036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoYRE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgoYUk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoYRk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoYSE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoYSk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgoYV036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoYTE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYTk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYUE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgoYUk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgoYU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgoYVE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgoYVU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgoYVk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgoYV036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgoYWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgoYWU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgoYWk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgoYW036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYXE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgoYXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoYXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoYX036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYYE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYYk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYZE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgoYXE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoYZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoYZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoYZ036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYaU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgoYXE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoYak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoYa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoYbE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYbk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgoYb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoYcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoYcU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode)))->size() >1&#xA;&#x9;-- and el.oclAsType(uml::ActivityParameterNode).name = object_node.name&#xA;&#x9;&#xA;&#x9;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYck36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYdE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYdk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgoYbk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoYd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYeU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgoYbk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoYek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYfE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgoYbk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoYfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYf036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgoYOk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoYgE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoYgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoYgk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYhE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgoYhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoYhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoYh036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYiE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoYik36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYjE36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgoYjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoYjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoYj036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYkE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYkk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYlE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgoYjE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoYlU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoYlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoYl036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYmU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgoYjE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoYmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoYm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoYnE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYnk36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgoYn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoYoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoYoU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYok36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYpE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYpk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYqE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYqk36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgoYr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoYq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYrE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYr036EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgoYsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYsU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgoYsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYs036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYtU36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgoYtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYt036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYuU36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgoYr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoYuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYu036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYvk36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgoYv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYwE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgoYwk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_wDBwsFKdEeOx7rZCF5ouIw/285" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYw036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgoYyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgoYxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoYxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoYxk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYyE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgoYyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoYyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoYy036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgoYzE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgoYzk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgoYz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgoY0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgoY0U36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgoY0k36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgo9DU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo9AU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo9A036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo9BU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgo9Ek36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo9B036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9CU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9C036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgo9DU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgo9Dk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgo9D036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgo9EE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgo9EU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgo9Ek36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgo9E036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgo9FE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgo9FU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgo9Fk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9F036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgo9GE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo9GU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo9Gk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9G036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9HU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9H036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgo9F036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo9IE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo9IU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo9Ik36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9JE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgo9F036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo9JU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo9Jk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo9J036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9KU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgo9Kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo9K036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo9LE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ObjectNode) and el.oclAsType(uml::ActivityParameterNode).name = object_node.name))->size() =1&#xA;&#x9;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9LU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9L036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9MU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgo9KU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo9Mk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9NE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgo9KU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo9NU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9N036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgo9KU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo9OE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9Ok36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgoYyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo9O036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo9PE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo9PU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9P036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgo9QE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo9QU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo9Qk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9Q036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo9RU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9R036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgo9SE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo9SU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo9Sk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9S036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9TU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9T036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgo9R036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo9UE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo9UU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo9Uk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9VE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgo9R036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo9VU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo9Vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo9V036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9WU36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgo9Wk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo9W036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo9XE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9XU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9X036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9YU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9Y036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9ZU36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgo9ak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo9Zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9Z036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9ak36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgo9a036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9bE36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgo9bU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9bk36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9cE36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgo9cU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9ck36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9dE36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgo9ak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo9dU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9dk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9eU36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgo9ek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9e036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgo9fU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_aKjokFKdEeOx7rZCF5ouIw/284" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9fk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgo9g036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo9f036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo9gE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo9gU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9g036EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgo9hE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo9hU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo9hk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9h036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9iU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgo9ik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo9i036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo9jE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo9jU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgo9m036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo9j036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo9kU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo9k036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgo9oE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo9lU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9l036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9mU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgo9m036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgo9nE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgo9nU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgo9nk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgo9n036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgo9oE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgo9oU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgo9ok36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgo9o036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgo9pE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9pU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgo9pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo9p036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo9qE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9qU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9q036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9rU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgo9pU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo9rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo9r036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo9sE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9sk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgo9pU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo9s036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo9tE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo9tU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9t036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgo9uE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo9uU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo9uk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ObjectNode) and el.oclAsType(uml::ActivityParameterNode).name = object_node.name))->size() =1&#xA;&#x9;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9u036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9vU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9v036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgo9t036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo9wE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9wk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgo9t036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo9w036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9xU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgo9t036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo9xk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9yE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgo9g036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo9yU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo9yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo9y036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9zU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgo9zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo9z036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo90E36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo90U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo90036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo91U36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgo91k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo91036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo92E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo92U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo92036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo93U36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgo91U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo93k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo93036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo94E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo94k36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgo91U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo94036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo95E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo95U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo95036EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgo96E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo96U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo96k36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo96036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo97U36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo97036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo98U36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo98036EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgo9-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo99E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo99U36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9-E36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgo9-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9-k36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgo9-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo9_E36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo9_k36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgo9_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-AE36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-Ak36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgo9-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-A036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-BE36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-B036EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgo-CE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-CU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgo-C036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_IrS8YFKdEeOx7rZCF5ouIw/283" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-DE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgo-EU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-DU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-Dk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-D036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-EU36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgo-Ek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-E036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-FE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-FU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-F036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgo-GE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-GU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-Gk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo-G036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgo-KU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo-HU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo-H036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo-IU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgo-Lk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo-I036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-JU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-J036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgo-KU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgo-Kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgo-K036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgo-LE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgo-LU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgo-Lk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgo-L036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgo-ME36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgo-MU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgo-Mk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-M036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgo-NE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-NU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-Nk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-N036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-OU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-O036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgo-M036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-PE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-PU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-Pk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-QE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgo-M036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-QU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-Qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-Q036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-RU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgo-Rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-R036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-SE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ObjectNode) and el.oclAsType(uml::ActivityParameterNode).name = object_node.name))->size() =1&#xA;&#x9;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-SU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-S036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-TU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgo-RU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-Tk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-UE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgo-RU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-UU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-U036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgo-RU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-VE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-Vk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgo-EU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-V036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-WE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-WU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-W036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgo-XE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-XU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-Xk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-X036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo-YU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-Y036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgo-ZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-ZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-Zk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-Z036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-aU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-a036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgo-Y036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-bE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-bU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-bk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-cE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgo-Y036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-cU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-ck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-c036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-dU36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgo-dk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-d036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-eE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-eU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-e036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-fU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-f036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-gU36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgo-hk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-gk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-g036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-hk36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgo-h036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-iE36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgo-iU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-ik36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-jE36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgo-jU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-jk36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-kE36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgo-hk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-kU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-kk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-lU36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgo-lk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-l036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgo-mU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_EIXjwFKdEeOx7rZCF5ouIw/282" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-mk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgo-n036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-m036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-nE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-nU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-n036EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgo-oE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-oU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-ok36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-o036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-pU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgo-pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-p036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-qE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo-qU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgo-t036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo-q036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo-rU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo-r036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgo-vE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo-sU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-s036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-tU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgo-t036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgo-uE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgo-uU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgo-uk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgo-u036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgo-vE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgo-vU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgo-vk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgo-v036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgo-wE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-wU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgo-wk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-w036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-xE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-xU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-x036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-yU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgo-wU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-y036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-zE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-zk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgo-wU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-z036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-0U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-0036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgo-1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-1k36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ObjectNode) and el.oclAsType(uml::ActivityParameterNode).name = object_node.name))->size() =1&#xA;&#x9;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-1036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-2U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-2036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgo-0036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-3k36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgo-0036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-4U36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgo-0036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-5E36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgo-n036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-5036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-6U36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgo-6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-7E36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-7U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo-7036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-8U36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgo-8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo-8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-9E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-9U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo-9036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo--U36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgo-8U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo--k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo--036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo-_E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo-_k36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgo-8U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo-_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_AE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_AU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_A036EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgo_BE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_BU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_Bk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_B036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_CU36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_C036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_DU36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_D036EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgo_FE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo_EE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_EU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_FE36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgo_FU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_Fk36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgo_F036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_GE36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_Gk36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgo_G036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_HE36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_Hk36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgo_FE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo_H036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_IE36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_I036EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgo_JE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_JU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgo_J036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_1avRsFKcEeOx7rZCF5ouIw/281" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_KE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgo_LU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo_KU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_Kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_K036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_LU36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgo_Lk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_L036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_ME36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_MU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_M036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgo_NE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_NU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_Nk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo_N036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgo_RU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo_OU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo_O036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo_PU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgo_Sk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo_P036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_QU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_Q036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgo_RU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgo_Rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgo_R036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgo_SE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgo_SU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgo_Sk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgo_S036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgo_TE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgo_TU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgo_Tk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_T036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgo_UE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_UU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_Uk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_U036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_VU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_V036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgo_T036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo_WE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_WU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_Wk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_XE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgo_T036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo_XU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_Xk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_X036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_YU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgo_Yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_Y036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_ZE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ObjectNode) and el.oclAsType(uml::ActivityParameterNode) = object_node))->size() =1&#xA;&#x9;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_ZU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_Z036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_aU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgo_YU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo_ak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_bE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgo_YU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo_bU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_b036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgo_YU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo_cE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_ck36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgo_LU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo_c036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_dE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_dU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_d036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgo_eE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_eU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_ek36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_e036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo_fU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_f036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgo_gE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_gU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_gk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_g036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_hU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_h036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgo_f036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo_iE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_iU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_ik36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_jE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgo_f036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo_jU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_jk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_j036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_kU36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgo_kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_k036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_lE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_lU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_l036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_mU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_m036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_nU36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgo_ok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo_nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_n036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_ok36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgo_o036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_pE36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgo_pU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_pk36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_qE36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgo_qU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_qk36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_rE36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgo_ok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo_rU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_rk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_sU36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgo_sk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_s036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgo_tU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_y2rZgFKcEeOx7rZCF5ouIw/280" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_tk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgo_u036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo_t036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_uE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_uU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_u036EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgo_vE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_vU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_vk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_v036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_wU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgo_wk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_w036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_xE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo_xU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgo_0036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo_x036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo_yU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo_y036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgo_2E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgo_zU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_z036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_0U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgo_0036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgo_1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgo_1U36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgo_1k36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgo_1036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgo_2E36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgo_2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgo_2k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgo_2036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgo_3E36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_3U36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgo_3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_4E36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_4U36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_4036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_5U36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgo_3U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo_5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_6E36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_6k36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgo_3U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo_6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_7U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_7036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgo_8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgo_8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgo_8k36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ObjectNode) and el.oclAsType(uml::ActivityParameterNode) = object_node))->size() =1&#xA;&#x9;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_8036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgo_9U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_9036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgo_7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo_-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo_-k36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgo_7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo_-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgo__U36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgo_7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgo__k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpAAE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgo_u036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpAAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpAAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpAA036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkEE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgpkEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpkEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpkE036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkFE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpkFk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkGE36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgpkGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpkGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpkG036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkHE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkHk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkIE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgpkGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpkIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpkIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpkI036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkJU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgpkGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpkJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpkJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpkKE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkKk36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgpkK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpkLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpkLU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkLk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkME36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkMk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkNE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkNk36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgpkO036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpkN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkOE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkO036EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgpkPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkPU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgpkPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkP036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkQU36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgpkQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkQ036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkRU36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgpkO036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpkRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkR036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkSk36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgpkS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkTE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgpkTk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_qnETwFKcEeOx7rZCF5ouIw/279" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkT036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgpkVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpkUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpkUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpkUk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkVE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgpkVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpkVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpkV036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkWE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkWk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgpkW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpkXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpkXU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpkXk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgpkbE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpkYE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpkYk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpkZE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgpkcU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpkZk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkaE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkak36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgpkbE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgpkbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgpkbk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgpkb036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgpkcE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgpkcU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgpkck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgpkc036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgpkdE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgpkdU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkdk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgpkd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpkeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpkeU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkek36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkfE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkfk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgpkdk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpkf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpkgE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpkgU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkg036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgpkdk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpkhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpkhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpkhk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkiE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgpkiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpkik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpki036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) implies&#xA;&#xA;let object_node : uml::ObjectNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')))->size()>1&#xA;&#x9;&#xA;&#x9;--and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ObjectNode) and el.oclAsType(uml::ObjectNode) = object_node))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkjE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkjk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkkE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgpkiE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpkkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkk036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgpkiE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpklE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpklk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgpkiE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpkl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkmU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgpkVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpkmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpkm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpknE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpknk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgpkn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpkoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpkoU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkok36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpkpE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkpk36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgpkp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpkqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpkqU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkqk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkrE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkrk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgpkpk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpkr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpksE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpksU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpks036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgpkpk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpktE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpktU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpktk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkuE36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgpkuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpkuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpku036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkvE36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkvk36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkwE36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkwk36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkxE36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgpkyU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpkxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkxk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkyU36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgpkyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpky036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgpkzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpkzU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpkz036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgpk0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpk0U36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpk0036EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgpkyU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpk1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpk1U36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpk2E36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgpk2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpk2k36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgpk3E36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_H31UkFKcEeOx7rZCF5ouIw/278" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpk3U36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgpk4k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpk3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpk3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpk4E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpk4k36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgpk4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpk5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpk5U36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpk5k36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpk6E36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgpk6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpk6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpk6036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpk7E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgpk-k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpk7k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpk8E36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpk8k36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgpk_036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpk9E36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpk9k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpk-E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgpk-k36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgpk-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgpk_E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgpk_U36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgpk_k36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgpk_036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgplAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgplAU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgplAk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgplA036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplBE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgplBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgplBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgplB036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplCE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplCk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplDE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgplBE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgplDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgplDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgplD036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplEU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgplBE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgplEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgplE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgplFE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplFk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgplF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgplGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgplGU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;&#x9;true&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')))->size()>1&#xA;&#x9;&#xA;&#x9;--and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ObjectNode) and el.oclAsType(uml::ObjectNode) = object_node))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplGk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplHE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplHk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgplFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgplH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplIU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgplFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgplIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplJE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgplFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgplJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplJ036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgpk4k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgplKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgplKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgplKk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplLE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgplLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgplLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgplL036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplME36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgplMk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplNE36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgplNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgplNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgplN036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplOE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplOk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplPE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgplNE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgplPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgplPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgplP036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplQU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgplNE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgplQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgplQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgplRE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplRk36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgplR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgplSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgplSU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplSk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplTE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplTk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplUE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplUk36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgplV036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgplU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplVE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplV036EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgplWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplWU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgplWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplW036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplXU36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgplXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplX036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplYU36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgplV036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgplYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplY036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplZk36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgplZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplaE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgplak36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_6IWFwFKbEeOx7rZCF5ouIw/277" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpla036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgplcE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgplbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgplbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgplbk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplcE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgplcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgplck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgplc036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpldE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpldk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgpld036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpleE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpleU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgplek36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgpliE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgplfE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgplfk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgplgE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgpljU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgplgk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplhE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplhk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgpliE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgpliU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgplik36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgpli036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgpljE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgpljU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgpljk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgplj036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgplkE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgplkU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplkk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgplk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpllE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpllU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpllk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplmE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplmk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgplkk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgplm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgplnE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgplnU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpln036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgplkk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgploE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgploU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgplok36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplpE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgplpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgplpk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgplp036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;--if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;--&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;--&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;--&#x9;&#x9;true&#xA;&#x9;&#x9;&#xA;&#x9;--uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')))->size()>1&#xA;&#x9;&#xA;&#x9;--and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ObjectNode) and el.oclAsType(uml::ObjectNode) = object_node))->size() =1&#xA;&#x9;&#xA;-- else&#xA; &#x9;true&#xA;-- endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplqE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplqk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplrE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgplpE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgplrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplr036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgplpE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgplsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplsk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgplpE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpls036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpltU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgplcE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpltk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgplt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpluE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpluk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgplu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgplvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgplvU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplvk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgplwE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplwk36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgplw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgplxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgplxU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplxk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgplyE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplyk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgplwk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgply036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgplzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgplzU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgplz036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgplwk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpl0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpl0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpl0k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpl1E36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgpl1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpl1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpl1036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpl2E36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpl2k36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpl3E36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpl3k36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpl4E36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgpl5U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpl4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpl4k36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpl5U36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgpl5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpl5036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgpl6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpl6U36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpl6036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgpl7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpl7U36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpl7036EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgpl5U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpl8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpl8U36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpl9E36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgpl9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpl9k36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgpl-E36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_x59IAFKbEeOx7rZCF5ouIw/276" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpl-U36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgpl_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpl-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpl-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpl_E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpl_k36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgpl_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpmAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpmAU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmAk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmBE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgpmBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpmBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpmB036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpmCE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgpmFk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpmCk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpmDE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpmDk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgpmG036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpmEE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmEk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmFE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgpmFk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgpmF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgpmGE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgpmGU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgpmGk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgpmG036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgpmHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgpmHU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgpmHk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgpmH036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmIE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgpmIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpmIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpmI036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmJE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmJk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmKE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgpmIE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpmKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpmKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpmK036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmLU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgpmIE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpmLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpmL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpmME36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmMk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgpmM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpmNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpmNU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;--let object_node : uml::ObjectNode = self.base_Pin in&#xA;--if (self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;--&#x9;object_node = self.base_ActivityParameterNode&#xA;--else&#xA;--&#x9;true&#xA;--endif and&#xA;&#xA;--if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;--&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;--&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;--&#x9;&#x9;true&#xA;&#x9;&#x9;&#xA;&#x9;--uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')))->size()>1&#xA;&#x9;&#xA;&#x9;--and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ObjectNode) and el.oclAsType(uml::ObjectNode) = object_node))->size() =1&#xA;&#x9;&#xA;-- else&#xA; &#x9;true&#xA;-- endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmNk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmOE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmOk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgpmMk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpmO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmPU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgpmMk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpmPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmQE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgpmMk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpmQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmQ036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgpl_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpmRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpmRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpmRk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmSE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgpmSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpmSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpmS036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmTE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpmTk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmUE36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgpmUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpmUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpmU036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmVE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmVk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmWE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgpmUE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpmWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpmWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpmW036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmXU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgpmUE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpmXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpmX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpmYE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmYk36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgpmY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpmZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpmZU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmZk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmaE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmak36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmbE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmbk36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgpmc036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpmb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmcE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmc036EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgpmdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmdU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgpmdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmd036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmeU36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgpmek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpme036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmfU36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgpmc036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpmfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmf036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmgk36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgpmg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmhE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgpmhk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_lSBXIFKbEeOx7rZCF5ouIw/275" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmh036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgpmjE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpmiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpmiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpmik36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmjE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgpmjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpmjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpmj036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmkE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmkk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgpmk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpmlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpmlU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpmlk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgpmpE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpmmE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpmmk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpmnE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgpmqU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpmnk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmoE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmok36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgpmpE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgpmpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgpmpk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgpmp036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgpmqE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgpmqU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgpmqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgpmq036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgpmrE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgpmrU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmrk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgpmr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpmsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpmsU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmsk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmtE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmtk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgpmrk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpmt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpmuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpmuU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmu036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgpmrk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpmvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpmvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpmvk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmwE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgpmwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpmwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpmw036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;&#x9;true&#xA;&#x9;&#x9;&#xA;&#x9;--uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')))->size()>1&#xA;&#x9;&#xA;&#x9;--and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ObjectNode) and el.oclAsType(uml::ObjectNode) = object_node))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmxE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpmxk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmyE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgpmwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpmyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmy036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgpmwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpmzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpmzk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgpmwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpmz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpm0U36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgpmjE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpm0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpm0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpm1E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpm1k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgpm1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpm2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpm2U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpm2k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpm3E36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpm3k36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgpm3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpm4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpm4U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpm4k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpm5E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpm5k36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgpm3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpm5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpm6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpm6U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpm6036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgpm3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpm7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpm7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpm7k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpm8E36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgpm8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpm8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpm8036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpm9E36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpm9k36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpm-E36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpm-k36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpm_E36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgpnAU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpm_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpm_k36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpnAU36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgpnAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpnA036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgpnBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpnBU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpnB036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgpnCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpnCU36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpnC036EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgpnAU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpnDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpnDU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpnEE36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgpnEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpnEk36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgpnFE36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_XsadEFKbEeOx7rZCF5ouIw/274" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpnFU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgpnGk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpnFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpnF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpnGE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpnGk36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgpnG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpnHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpnHU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpnHk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpnIE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgpnIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpnIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpnI036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpnJE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgpnMk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpnJk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpnKE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpnKk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgpnN036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgpnLE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpnLk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpnME36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgpnMk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgpnM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgpnNE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgpnNU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgpnNk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgpnN036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgpnOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgpnOU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgpnOk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgpnO036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpnPE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgpnPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpnPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpnP036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpnQE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpnQk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpnRE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgpnPE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpnRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpnRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpnR036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpnSU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgpnPE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpnSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpnS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpnTE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpnTk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgpnT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpnUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpnUU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')))->size()>1&#xA;&#x9;&#xA;&#x9;--and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ObjectNode) and el.oclAsType(uml::ObjectNode) = object_node))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpnUk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgpnVE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpnVk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgpnTk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpnV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpnWU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgpnTk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpnWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpnXE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgpnTk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpnXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgpnX036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgpnGk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgpnYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgpnYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgpnYk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLIE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgqLIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqLIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqLI036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLJE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqLJk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLKE36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgqLKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqLKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqLK036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLLE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLLk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLME36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgqLKE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqLMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqLMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqLM036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLNU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgqLKE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqLNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqLN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqLOE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLOk36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgqLO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqLPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqLPU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLPk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLQE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLQk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLRE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLRk36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgqLS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqLR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLSE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLS036EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgqLTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLTU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgqLTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLT036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLUU36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgqLUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLU036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLVU36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgqLS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqLVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLV036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLWk36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgqLW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLXE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgqLXk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_NTorYFKbEeOx7rZCF5ouIw/273" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLX036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgqLZE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqLYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqLYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqLYk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLZE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgqLZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqLZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqLZ036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLaE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLak36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgqLa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqLbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqLbU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqLbk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgqLfE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqLcE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqLck36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqLdE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgqLgU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqLdk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLeE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLek36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgqLfE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgqLfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgqLfk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgqLf036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgqLgE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgqLgU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgqLgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgqLg036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgqLhE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgqLhU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLhk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgqLh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqLiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqLiU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLik36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLjE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLjk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgqLhk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqLj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqLkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqLkU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLk036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgqLhk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqLlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqLlU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqLlk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLmE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgqLmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqLmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqLm036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ObjectNode) and el.oclAsType(uml::ObjectNode) = object_node))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLnE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLnk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLoE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgqLmE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqLoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLo036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgqLmE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqLpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLpk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgqLmE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqLp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLqU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgqLZE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqLqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqLq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqLrE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLrk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgqLr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqLsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqLsU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLsk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqLtE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLtk36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgqLt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqLuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqLuU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLuk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLvE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLvk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgqLtk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqLv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqLwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqLwU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLw036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgqLtk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqLxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqLxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqLxk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqLyE36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgqLyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqLyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqLy036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLzE36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqLzk36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqL0E36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqL0k36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqL1E36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgqL2U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqL1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqL1k36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqL2U36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgqL2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqL2036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgqL3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqL3U36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqL3036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgqL4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqL4U36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqL4036EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgqL2U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqL5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqL5U36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqL6E36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgqL6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqL6k36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgqL7E36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_9hYlgFKYEeOx7rZCF5ouIw/272" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqL7U36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgqL8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqL7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqL7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqL8E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqL8k36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgqL8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqL9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqL9U36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqL9k36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqL-E36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgqL-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqL-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqL-036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqL_E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgqMCk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqL_k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqMAE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqMAk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgqMD036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqMBE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMBk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMCE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgqMCk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgqMC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgqMDE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgqMDU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgqMDk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgqMD036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgqMEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgqMEU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgqMEk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgqME036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMFE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgqMFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqMFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqMF036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMGE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMGk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMHE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgqMFE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqMHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqMHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqMH036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMIU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgqMFE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqMIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqMI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqMJE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMJk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgqMJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqMKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqMKU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMKk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMLE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMLk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgqMJk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqML036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMMU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgqMJk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqMMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMNE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgqMJk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqMNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMN036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgqL8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqMOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqMOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqMOk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMPE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgqMPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqMPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqMP036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMQE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqMQk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMRE36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgqMRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqMRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqMR036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMSE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMSk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMTE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgqMRE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqMTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqMTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqMT036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMUU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgqMRE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqMUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqMU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqMVE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMVk36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgqMV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqMWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqMWU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMWk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMXE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMXk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMYE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMYk36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgqMZ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqMY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMZE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMZ036EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgqMaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMaU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgqMak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMa036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMbU36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgqMbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMb036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMcU36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgqMZ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqMck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMc036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMdk36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgqMd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMeE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgqMek36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_SMZRcFKYEeOx7rZCF5ouIw/271" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMe036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgqMgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqMfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqMfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqMfk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMgE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgqMgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqMgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqMg036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMhE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMhk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgqMh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqMiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqMiU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqMik36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgqMmE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqMjE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqMjk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqMkE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgqMnU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqMkk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMlE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMlk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgqMmE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgqMmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgqMmk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgqMm036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgqMnE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgqMnU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgqMnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgqMn036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgqMoE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgqMoU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMok36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgqMo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqMpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqMpU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMpk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMqE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMqk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgqMok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqMq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqMrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqMrU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMr036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgqMok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqMsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqMsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqMsk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMtE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgqMtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqMtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqMt036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMuE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMuk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMvE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgqMtE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqMvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMv036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgqMtE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqMwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMwk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgqMtE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqMw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMxU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgqMgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqMxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqMx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqMyE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqMyk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgqMy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqMzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqMzU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqMzk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqM0E36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqM0k36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgqM0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqM1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqM1U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqM1k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqM2E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqM2k36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgqM0k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqM2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqM3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqM3U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqM3036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgqM0k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqM4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqM4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqM4k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqM5E36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgqM5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqM5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqM5036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqM6E36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqM6k36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqM7E36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqM7k36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqM8E36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgqM9U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqM8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqM8k36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqM9U36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgqM9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqM9036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgqM-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqM-U36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqM-036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgqM_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqM_U36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqM_036EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgqM9U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqNAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNAU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNBE36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgqNBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNBk36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgqNCE36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_IE0kgFKYEeOx7rZCF5ouIw/270" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNCU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgqNDk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqNCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqNC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqNDE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNDk36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgqND036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqNEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqNEU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNEk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNFE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgqNFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqNFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqNF036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqNGE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgqNJk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqNGk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqNHE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqNHk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgqNK036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqNIE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNIk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNJE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgqNJk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgqNJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgqNKE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgqNKU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgqNKk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgqNK036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgqNLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgqNLU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgqNLk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgqNL036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNME36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgqNMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqNMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqNM036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNNE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNNk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNOE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgqNME36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqNOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqNOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqNO036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;if self.base_Pin.oclIsKindOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNPU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgqNME36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqNPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqNP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqNQE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNQk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgqNQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqNRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqNRU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNRk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNSE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNSk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgqNQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqNS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNTU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgqNQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqNTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNUE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgqNQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqNUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNU036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgqNDk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqNVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqNVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqNVk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNWE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgqNWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqNWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqNW036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNXE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqNXk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNYE36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgqNYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqNYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqNY036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNZE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNZk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNaE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgqNYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqNaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqNak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqNa036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNbU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgqNYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqNbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqNb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqNcE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNck36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgqNc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqNdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqNdU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNdk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNeE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNek36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNfE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNfk36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgqNg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqNf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNgE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNg036EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgqNhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNhU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgqNhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNh036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNiU36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgqNik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNi036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNjU36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgqNg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqNjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNj036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNkk36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgqNk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNlE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgqNlk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_E25P8FKYEeOx7rZCF5ouIw/269" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNl036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgqNnE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqNmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqNmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqNmk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNnE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgqNnU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqNnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqNn036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNoE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNok36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgqNo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqNpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqNpU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqNpk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgqNtE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqNqE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqNqk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqNrE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgqNuU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqNrk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNsE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNsk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgqNtE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgqNtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgqNtk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgqNt036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgqNuE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgqNuU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgqNuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgqNu036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgqNvE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgqNvU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNvk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgqNv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqNwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqNwU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNwk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqNxE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNxk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgqNvk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqNx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqNyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqNyU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqNy036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgqNvk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqNzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqNzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqNzk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqN0E36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgqN0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqN0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqN0036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqN1E36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqN1k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqN2E36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgqN0E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqN2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqN2036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgqN0E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqN3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqN3k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgqN0E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqN3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqN4U36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgqNnE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqN4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqN4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqN5E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqN5k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgqN5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqN6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqN6U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqN6k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqN7E36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqN7k36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgqN7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqN8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqN8U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqN8k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqN9E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqN9k36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgqN7k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqN9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqN-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqN-U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqN-036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgqN7k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqN_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqN_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqN_k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqOAE36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgqOAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqOAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqOA036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqOBE36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqOBk36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqOCE36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqyME36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyMk36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgqyN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqyM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqyNE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyN036EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgqyOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyOU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgqyOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqyO036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyPU36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgqyPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqyP036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyQU36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgqyN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqyQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqyQ036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyRk36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgqyR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqySE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgqySk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_6HP2YFKXEeOx7rZCF5ouIw/268" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyS036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgqyUE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqyTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqyTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqyTk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyUE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgqyUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqyUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqyU036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqyVE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyVk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgqyV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqyWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqyWU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqyWk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgqyaE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqyXE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqyXk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqyYE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgqybU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqyYk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqyZE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqyZk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgqyaE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgqyaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgqyak36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgqya036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgqybE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgqybU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgqybk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgqyb036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgqycE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgqycU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyck36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgqyc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqydE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqydU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqydk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqyeE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyek36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgqyck36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqye036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqyfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqyfU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;if self.base_Pin.oclIsKindOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyf036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgqyck36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqygE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqygU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqygk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyhE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgqyhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqyhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqyh036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqyiE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqyik36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyjE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgqyhE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqyjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyj036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgqyhE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqykE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqykk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgqyhE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqyk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqylU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgqyUE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqylk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqyl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqymE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqymk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgqym036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqynE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqynU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqynk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqyoE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyok36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgqyo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqypE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqypU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqypk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqyqE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyqk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgqyok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqyq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqyrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqyrU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyr036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgqyok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqysE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqysU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqysk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqytE36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgqytU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqytk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqyt036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqyuE36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqyuk36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqyvE36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqyvk36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqywE36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgqyxU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqywU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqywk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyxU36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgqyxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyx036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgqyyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqyyU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyy036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgqyzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqyzU36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqyz036EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgqyxU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqy0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqy0U36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqy1E36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgqy1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqy1k36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgqy2E36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_lR-3sFKXEeOx7rZCF5ouIw/267" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqy2U36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgqy3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqy2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqy2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqy3E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqy3k36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgqy3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqy4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqy4U36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqy4k36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqy5E36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgqy5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqy5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqy5036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqy6E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgqy9k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqy6k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqy7E36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqy7k36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgqy-036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqy8E36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqy8k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqy9E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgqy9k36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgqy9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgqy-E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgqy-U36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgqy-k36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgqy-036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgqy_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgqy_U36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgqy_k36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgqy_036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzAE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgqzAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzA036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzBE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzBk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzCE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgqzAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqzCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzC036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin) and&#xA;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzDU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgqzAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqzDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzEE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzEk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgqzE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzFU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzFk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzGE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzGk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgqzEk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqzG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzHU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgqzEk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqzHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzIE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgqzEk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqzIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzI036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgqy3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqzJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzJk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzKE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgqzKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzK036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzLE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqzLk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzME36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgqzMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzM036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzNE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzNk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzOE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgqzME36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqzOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzO036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzPU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgqzME36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqzPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzQE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzQk36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgqzQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzRU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzRk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzSE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzSk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzTE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzTk36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgqzU036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqzT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzUE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzU036EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgqzVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzVU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgqzVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzV036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzWU36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgqzWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzW036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzXU36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgqzU036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqzXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzX036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzYk36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgqzY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzZE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgqzZk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_LxFQUFKXEeOx7rZCF5ouIw/266" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzZ036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgqzbE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqzaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzak36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzbE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgqzbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzb036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzcE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzck36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgqzc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzdU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqzdk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgqzhE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqzeE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqzek36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqzfE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgqziU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqzfk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzgE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzgk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgqzhE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgqzhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgqzhk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgqzh036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgqziE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgqziU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgqzik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgqzi036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgqzjE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgqzjU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzjk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgqzj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzkU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzkk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzlE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzlk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgqzjk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqzl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzmU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzm036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgqzjk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqznE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqznU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqznk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzoE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgqzoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzo036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzpE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzpk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzqE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgqzoE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqzqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzq036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgqzoE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqzrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzrk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgqzoE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqzr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzsU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgqzbE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqzsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqztE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqztk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgqzt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzuU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzuk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgqzvE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzvk36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgqzv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzwU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzwk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqzxE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzxk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgqzvk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqzx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzyU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqzy036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgqzvk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqzzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqzzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqzzk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqz0E36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgqz0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqz0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqz0036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqz1E36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqz1k36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqz2E36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqz2k36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqz3E36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgqz4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqz3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqz3k36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqz4U36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgqz4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqz4036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgqz5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqz5U36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqz5036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgqz6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqz6U36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqz6036EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgqz4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqz7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqz7U36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqz8E36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgqz8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqz8k36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgqz9E36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_IX340FKXEeOx7rZCF5ouIw/265" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqz9U36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgqz-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgqz9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqz9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqz-E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgqz-k36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgqz-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgqz_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgqz_U36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgqz_k36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0AE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgq0AU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq0Ak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq0A036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgq0BE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgq0Ek36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgq0Bk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgq0CE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgq0Ck36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgq0F036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgq0DE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0Dk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0EE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgq0Ek36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgq0E036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgq0FE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgq0FU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgq0Fk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgq0F036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgq0GE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgq0GU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgq0Gk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgq0G036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0HE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgq0HU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq0Hk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq0H036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0IE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0Ik36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0JE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgq0HE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq0JU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq0Jk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq0J036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0KU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgq0HE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq0Kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq0K036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq0LE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0Lk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgq0L036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq0ME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq0MU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0Mk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0NE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0Nk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgq0Lk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq0N036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0OU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgq0Lk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq0Ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0PE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgq0Lk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq0PU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0P036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgqz-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq0QE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq0QU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq0Qk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0RE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgq0RU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq0Rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq0R036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0SE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgq0Sk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0TE36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgq0TU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq0Tk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq0T036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0UE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0Uk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0VE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgq0TE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq0VU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq0Vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq0V036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0WU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgq0TE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq0Wk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq0W036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq0XE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0Xk36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgq0X036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq0YE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq0YU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0Yk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0ZE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0Zk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0aE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0ak36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgq0b036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq0a036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0bE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0b036EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgq0cE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0cU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgq0ck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0c036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0dU36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgq0dk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0d036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0eU36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgq0b036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq0ek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0e036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0fk36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgq0f036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0gE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgq0gk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_oCPOQFKWEeOx7rZCF5ouIw/264" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0g036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgq0iE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq0hE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq0hU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq0hk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0iE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgq0iU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq0ik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq0i036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0jE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0jk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgq0j036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq0kE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq0kU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgq0kk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgq0oE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgq0lE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgq0lk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgq0mE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgq0pU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgq0mk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0nE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0nk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgq0oE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgq0oU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgq0ok36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgq0o036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgq0pE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgq0pU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgq0pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgq0p036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgq0qE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgq0qU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0qk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgq0q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq0rE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq0rU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0rk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0sE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0sk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgq0qk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq0s036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq0tE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq0tU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0t036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgq0qk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq0uE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq0uU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq0uk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0vE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgq0vU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq0vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq0v036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0wE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0wk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0xE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgq0vE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq0xU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0x036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgq0vE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq0yE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0yk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgq0vE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq0y036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0zU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgq0iE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq0zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq0z036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq00E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq00k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgq00036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq01E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq01U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq01k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgq02E36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq02k36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgq02036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq03E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq03U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq03k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq04E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq04k36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgq02k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq04036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq05E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq05U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq05036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgq02k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq06E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq06U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq06k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq07E36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgq07U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq07k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq07036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|not n.oclIsTypeOf(uml::ObjectFlow))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq08E36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq08k36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq09E36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq09k36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0-E36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgq0_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq0-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq0-k36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0_U36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgq0_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq0_036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgq1AE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq1AU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq1A036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgq1BE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq1BU36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq1B036EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgq0_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq1CE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq1CU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq1DE36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgq1DU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq1Dk36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgq1EE36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_WyioEFKWEeOx7rZCF5ouIw/263" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq1EU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgq1Fk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq1Ek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq1E036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq1FE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq1Fk36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgq1F036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq1GE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq1GU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq1Gk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq1HE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgq1HU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq1Hk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq1H036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgq1IE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgq1Lk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgq1Ik36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgq1JE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgq1Jk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgq1M036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgq1KE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq1Kk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq1LE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgq1Lk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgq1L036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgq1ME36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgq1MU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgq1Mk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgq1M036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgq1NE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgq1NU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgq1Nk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgq1N036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq1OE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgq1OU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq1Ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq1O036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq1PE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq1Pk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq1QE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgq1OE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq1QU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq1Qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq1Q036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq1RU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgq1OE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq1Rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq1R036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq1SE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq1Sk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgq1S036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq1TE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq1TU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq1Tk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq1UE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq1Uk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgq1Sk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq1U036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq1VU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgq1Sk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq1Vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq1WE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgq1Sk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq1WU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq1W036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgq1Fk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgq1XE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq1XU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq1Xk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq1YE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgq1YU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq1Yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq1Y036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq1ZE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgq1Zk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgq1aE36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgq1aU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgq1ak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgq1a036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq1bE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgq1bk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZQE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgq1aE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrZQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrZQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrZQ036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZRU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgq1aE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrZRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrZR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrZSE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZSk36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgrZS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrZTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrZTU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.getAppliedStereotype('CTIE_Profile_Final::flow_controler')->notEmpty()=false)->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZTk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZUE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZUk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZVE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZVk36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgrZW036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrZV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZWE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZW036EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgrZXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZXU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgrZXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZX036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZYU36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgrZYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZY036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZZU36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgrZW036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrZZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZZ036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZak36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgrZa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZbE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgrZbk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_OGYlsFKVEeOx7rZCF5ouIw/262" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZb036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgrZdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrZcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrZcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrZck36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZdE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgrZdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrZdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrZd036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZeE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZek36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgrZe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrZfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrZfU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrZfk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgrZjE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrZgE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrZgk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrZhE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgrZkU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrZhk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZiE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZik36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgrZjE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgrZjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgrZjk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgrZj036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgrZkE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgrZkU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgrZkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgrZk036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgrZlE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgrZlU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZlk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgrZl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrZmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrZmU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZmk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZnE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZnk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgrZlk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrZn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrZoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrZoU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZo036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgrZlk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrZpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrZpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrZpk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZqE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgrZqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrZqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrZq036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZrE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZrk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZsE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgrZqE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrZsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZs036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgrZqE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrZtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZtk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgrZqE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrZt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZuU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgrZdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrZuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrZu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrZvE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZvk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgrZv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrZwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrZwU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZwk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrZxE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZxk36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgrZx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrZyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrZyU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZyk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZzE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZzk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgrZxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrZz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrZ0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrZ0U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZ0036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgrZxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrZ1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrZ1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrZ1k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZ2E36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgrZ2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrZ2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrZ2036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZ3E36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZ3k36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZ4E36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZ4k36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZ5E36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgrZ6U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrZ5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZ5k36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZ6U36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgrZ6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZ6036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgrZ7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZ7U36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZ7036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgrZ8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZ8U36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZ8036EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgrZ6U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrZ9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZ9U36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZ-E36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgrZ-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrZ-k36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgrZ_E36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_IWayMFKVEeOx7rZCF5ouIw/261" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrZ_U36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgraAk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrZ_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrZ_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgraAE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgraAk36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgraA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgraBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgraBU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgraBk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgraCE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgraCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgraCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgraC036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgraDE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgraGk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgraDk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgraEE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgraEk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgraH036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgraFE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgraFk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgraGE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgraGk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgraG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgraHE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgraHU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgraHk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgraH036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgraIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgraIU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgraIk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgraI036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgraJE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgraJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgraJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgraJ036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgraKE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgraKk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgraLE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgraJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgraLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgraLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgraL036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgraMU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgraJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgraMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgraM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgraNE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgraNk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgraN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgraOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgraOU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgraOk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgraPE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgraPk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgraNk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgraP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgraQU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgraNk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgraQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgraRE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgraNk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgraRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgraR036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgraAk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgraSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgraSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgraSk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgraTE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgraTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgraTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgraT036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgraUE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgraUk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgraVE36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgraVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgraVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgraV036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgraWE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgraWk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgraXE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgraVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgraXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgraXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgraX036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgraYU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgraVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgraYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgraY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgraZE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgraZk36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgraZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgraaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgraaU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgraak36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrabE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrabk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgracE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrack36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgrad036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrac036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgradE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrad036EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgraeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgraeU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgraek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrae036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrafU36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgrafk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgraf036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgragU36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgrad036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgragk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrag036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrahk36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgrah036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgraiE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgraik36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_BzcNYFKVEeOx7rZCF5ouIw/260" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrai036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgrakE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrajE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrajU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrajk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrakE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgrakU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrakk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrak036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgralE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgralk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgral036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgramE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgramU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgramk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgraqE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgranE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrank36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgraoE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgrarU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgraok36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrapE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrapk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgraqE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgraqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgraqk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgraq036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgrarE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgrarU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgrark36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgrar036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgrasE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgrasU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrask36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgras036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgratE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgratU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgratk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrauE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrauk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgrask36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrau036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgravE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgravU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrav036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgrask36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrawE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrawU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrawk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgraxE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgraxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgraxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrax036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrayE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrayk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrazE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgraxE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrazU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgraz036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgraxE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgra0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgra0k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgraxE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgra0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgra1U36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgrakE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgra1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgra1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgra2E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgra2k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgra2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgra3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgra3U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgra3k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgra4E36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgra4k36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgra4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgra5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgra5U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgra5k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgra6E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgra6k36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgra4k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgra6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgra7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgra7U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgra7036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgra4k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgra8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgra8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgra8k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgra9E36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgra9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgra9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgra9036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 &#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgra-E36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgra-k36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgra_E36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgra_k36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbAE36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgrbBU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrbAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbAk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbBU36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgrbBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbB036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgrbCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbCU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbC036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgrbDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbDU36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbD036EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgrbBU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrbEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbEU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbFE36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgrbFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbFk36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgrbGE36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_4dIV4FFCEeOTpJem-j11Mg/259" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbGU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgrbHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrbGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrbG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrbHE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbHk36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgrbH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrbIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrbIU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbIk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbJE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgrbJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrbJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrbJ036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrbKE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgrbNk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrbKk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrbLE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrbLk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgrbO036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrbME36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbMk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbNE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgrbNk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgrbN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgrbOE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgrbOU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgrbOk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgrbO036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgrbPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgrbPU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgrbPk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgrbP036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbQE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgrbQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrbQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrbQ036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbRE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbRk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbSE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgrbQE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrbSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrbSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrbS036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbTU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgrbQE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrbTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrbT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrbUE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbUk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgrbU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrbVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrbVU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbVk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbWE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbWk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgrbUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrbW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbXU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgrbUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrbXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbYE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgrbUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrbYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbY036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgrbHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrbZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrbZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrbZk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbaE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgrbaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrbak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrba036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbbE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrbbk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbcE36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgrbcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrbck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrbc036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbdE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbdk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbeE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgrbcE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrbeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrbek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrbe036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbfU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgrbcE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrbfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrbf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrbgE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbgk36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgrbg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrbhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrbhU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbhk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbiE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbik36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbjE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbjk36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgrbk036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrbj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbkE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbk036EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgrblE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrblU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgrblk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbl036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbmU36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgrbmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbm036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbnU36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgrbk036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrbnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbn036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbok36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgrbo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbpE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgrbpk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_t_Kb0FE6EeOu0u1cSFHSAw/258" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbp036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgrbrE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrbqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrbqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrbqk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbrE36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgrbrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrbrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrbr036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbsE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbsk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgrbs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrbtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrbtU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrbtk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgrbxE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrbuE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrbuk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrbvE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgrbyU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrbvk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbwE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrbwk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgrbxE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgrbxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgrbxk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgrbx036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgrbyE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgrbyU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgrbyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgrby036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgrbzE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgrbzU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrbzk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgrbz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrb0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrb0U36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrb0k36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrb1E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrb1k36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgrbzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrb1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrb2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrb2U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrb2036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgrbzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrb3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrb3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrb3k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrb4E36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgrb4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrb4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrb4036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrb5E36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrb5k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrb6E36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgrb4E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrb6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrb6036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgrb4E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrb7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrb7k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgrb4E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrb7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrb8U36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgrbrE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrb8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrb8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrb9E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrb9k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgrb9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrb-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrb-U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrb-k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrb_E36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrb_k36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgrb_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrcAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrcAU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrcAk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrcBE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrcBk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgrb_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrcB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrcCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrcCU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrcC036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgrb_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrcDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrcDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrcDk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrcEE36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgrcEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrcEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrcE036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrcFE36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrcFk36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrcGE36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrcGk36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrcHE36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgrcJU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrcHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrcHk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrcIE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrcIk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrcJU36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgrcJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrcJ036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgrcKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrcKU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrcK036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgrcLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrcLU36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrcL036EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgrcJU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrcME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrcMU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrcNE36EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgrcNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrcNk36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgrcOE36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_tYdlAFE2EeOwrOe2LUshRA/257" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrcOU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgrcPk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrcOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrcO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrcPE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrcPk36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgrcP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrcQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrcQU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrcQk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrcRE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgrcRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrcRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrcR036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrcSE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgrcVk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrcSk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrcTE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrcTk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgrcW036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgrcUE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrcUk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrcVE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgrcVk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgrcV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgrcWE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgrcWU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgrcWk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgrcW036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgrcXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgrcXU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgrcXk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgrcX036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrcYE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgrcYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrcYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrcY036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrcZE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgrcZk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrcaE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgrcYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrcaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgrcak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgrca036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgrcbU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgrcYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgrcbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsAUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsAUU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsAU036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgsAVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsAVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsAVk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsAV036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsAWU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsAW036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgsAU036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsAXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsAXk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgsAU036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsAX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsAYU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgsAU036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsAYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsAZE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgrcPk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsAZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsAZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsAZ036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsAaU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgsAak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsAa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsAbE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsAbU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsAb036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsAcU36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgsAck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsAc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsAdE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsAdU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsAd036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsAeU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgsAcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsAek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsAe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsAfE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsAfk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgsAcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsAf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsAgE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsAgU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsAg036EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgsAhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsAhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsAhk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsAh036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsAiU36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsAi036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsAjU36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsAj036EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgsAmE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsAkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsAkU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsAk036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsAlU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsAmE36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgsAmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsAmk36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgsAm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsAnE36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsAnk36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgsAn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsAoE36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsAok36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgsAmE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsAo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsApE36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsAp036EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgsAqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsAqU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgsAq036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_cT4KAFEzEeOwrOe2LUshRA/256" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsArE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgsAsU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsArU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsArk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsAr036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsAsU36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgsAsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsAs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsAtE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsAtU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsAt036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgsAuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsAuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsAuk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsAu036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgsAyU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsAvU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsAv036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsAwU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgsAzk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsAw036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsAxU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsAx036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgsAyU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgsAyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgsAy036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgsAzE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgsAzU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgsAzk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgsAz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgsA0E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgsA0U36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgsA0k36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsA0036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgsA1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsA1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsA1k36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsA1036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsA2U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsA2036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgsA0036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsA3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsA3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsA3k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsA4E36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgsA0036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsA4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsA4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsA4036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsA5U36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgsA5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsA5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsA6E36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsA6U36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsA6036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsA7U36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgsA5U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsA7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsA8E36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgsA5U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsA8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsA8036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgsA5U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsA9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsA9k36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgsAsU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsA9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsA-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsA-U36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsA-036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgsA_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsA_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsA_k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsA_036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsBAU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBA036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgsBBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsBBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsBBk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBB036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBCU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBC036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgsBA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsBDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsBDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsBDk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBEE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgsBA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsBEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsBEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsBE036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBFU36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgsBFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsBF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsBGE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBGU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBG036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBHU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBH036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBIU36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgsBLE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsBIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBI036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBJU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBJ036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsBKU36EeSS5u8wdxTIGg" name="isIterative" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBLE36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgsBLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBLk36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgsBL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBME36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBMk36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgsBM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBNE36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBNk36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgsBLE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsBN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBOE36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBO036EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgsBPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBPU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgsBP036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_KDk34FEyEeOwrOe2LUshRA/255" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBQE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgsBRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsBQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsBQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsBQ036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBRU36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgsBRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsBR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsBSE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBSU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBS036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgsBTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsBTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsBTk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsBT036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgsBXU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsBUU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsBU036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsBVU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgsBYk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsBV036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBWU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBW036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgsBXU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgsBXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgsBX036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgsBYE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgsBYU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgsBYk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgsBY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgsBZE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgsBZU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgsBZk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBZ036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgsBaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsBaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsBak36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBa036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBbU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBb036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgsBZ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsBcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsBcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsBck36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBdE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgsBZ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsBdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsBdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsBd036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBeU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgsBek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsBe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsBfE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBfU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBf036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBgU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgsBeU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsBgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBhE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgsBeU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsBhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBh036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgsBeU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsBiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBik36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgsBRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsBi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsBjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsBjU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBj036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgsBkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsBkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsBkk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBk036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsBlU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBl036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgsBmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsBmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsBmk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBm036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBnU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBn036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgsBl036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsBoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsBoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsBok36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBpE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgsBl036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsBpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsBpk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsBp036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBqU36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgsBqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsBq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsBrE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBrU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBr036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBsU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBs036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBtU36EeSS5u8wdxTIGg" name="main_computation" eSuperTypes="_xgsBwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsBtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBt036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBuU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBu036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsBvU36EeSS5u8wdxTIGg" name="isIterative" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBwE36EeSS5u8wdxTIGg" name="computation" abstract="true">
          <eAnnotations xmi:id="_xgsBwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfME36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBwk36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgsBw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBxE36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBxk36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgsBx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsByE36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsByk36EeSS5u8wdxTIGg" name="iterative_computation" eSuperTypes="_xgsBwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsBy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsBzE36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsBz036EeSS5u8wdxTIGg" name="iterative_object">
          <eAnnotations xmi:id="_xgsB0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfJE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsB0U36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgsB0036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_d5Cv0E6oEeOec59rrEPEZQ/254" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsB1E36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgsB2U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsB1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsB1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsB1036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsB2U36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgsB2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsB2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsB3E36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsB3U36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsB3036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgsB4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsB4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsB4k36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsB4036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgsB8U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsB5U36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsB5036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsB6U36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgsB9k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsB6036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsB7U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsB7036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgsB8U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgsB8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgsB8036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgsB9E36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgsB9U36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgsB9k36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgsB9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgsB-E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgsB-U36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgsB-k36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsB-036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgsB_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsB_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsB_k36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsB_036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCAU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCA036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgsB-036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsCBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCBk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCCE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgsB-036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsCCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCC036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCDU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgsCDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCEE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCEU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCE036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCFU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgsCDU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsCFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCGE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgsCDU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsCGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCG036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgsCDU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsCHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCHk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgsB2U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsCH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCIU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCI036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgsCJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCJk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCJ036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsCKU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCK036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgsCLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCLk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCL036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCMU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCM036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgsCK036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsCNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCNk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCOE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgsCK036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsCOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCO036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCPU36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgsCPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCQE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCQU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCQ036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCRU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCR036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCSU36EeSS5u8wdxTIGg" name="computation">
          <eAnnotations xmi:id="_xgsCSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCS036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCTU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCT036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsCUU36EeSS5u8wdxTIGg" name="isIterative" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCU036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgsCVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCVU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCV036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgsCWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCWU36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgsCW036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_AtVDkE6oEeOec59rrEPEZQ/253" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCXE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgsCYU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsCXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCX036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCYU36EeSS5u8wdxTIGg" name="operation" abstract="true">
          <eAnnotations xmi:id="_xgsCYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCZE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCZU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCZ036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgsCaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCak36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsCa036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgsCeU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsCbU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsCb036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsCcU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgsCfk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsCc036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCdU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCd036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgsCeU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgsCek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgsCe036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgsCfE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgsCfU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgsCfk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgsCf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgsCgE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgsCgU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgsCgk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCg036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgsChE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsChU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsChk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCh036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCiU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCi036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgsCg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsCjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCjk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCkE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgsCg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsCkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCk036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsClU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgsClk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCmE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCmU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCm036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCnU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgsClU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsCnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCoE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgsClU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsCoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCo036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgsClU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsCpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCpk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgsCYU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsCp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCqU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCq036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgsCrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCrk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCr036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsCsU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCs036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgsCtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCtk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCt036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCuU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCu036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgsCs036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsCvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCvk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCwE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgsCs036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsCwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCw036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsCxU36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgsCxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsCx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsCyE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCyU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCy036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCzU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsCz036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsC0U36EeSS5u8wdxTIGg" name="computation">
          <eAnnotations xmi:id="_xgsC0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsC0036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsC1U36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsC1036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsC2U36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgsC2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsC2036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsC3U36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgsC3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsC3036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgsC4U36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_bAQGkE4gEeO1tu-9EBJwrw/252" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsC4k36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgsC5036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsC4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsC5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsC5U36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsC5036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgsC6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsC6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsC6k36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsC6036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsC7U36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgsC7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsC7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsC8E36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsC8U36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgsC_036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsC8036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsC9U36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsC9036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgsDBE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsC-U36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsC-036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsC_U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgsC_036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgsDAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgsDAU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgsDAk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgsDA036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgsDBE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgsDBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgsDBk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgsDB036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgsDCE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsDCU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgsDCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsDC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsDDE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsDDU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsDD036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsDEU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgsDCU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsDEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsDE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsDFE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsDFk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgsDCU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsDF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsDGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsDGU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsDG036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgsDHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsDHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsDHk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsDH036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsDIU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsDI036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgsDG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsDJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsDJk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgsDG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsDJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsDKU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgsDG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsDKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsDLE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgsC5036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsDLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsDLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsDL036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsDMU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgsDMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsDM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsDNE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsDNU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsDN036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsDOU36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgsDOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsDO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsDPE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsDPU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsDP036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsDQU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgsDOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsDQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsDQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsDRE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsDRk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgsDOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsDR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsDSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsDSU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsDS036EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgsDTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsDTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsDTk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsDT036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsDUU36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsDU036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsDVU36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsDV036EeSS5u8wdxTIGg" name="computation">
          <eAnnotations xmi:id="_xgsDWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsDWU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsDW036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsDXU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsDX036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgsDYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsDYU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsDY036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgsDZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsDZU36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgsDZ036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_hOH64E4cEeO1tu-9EBJwrw/251" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsDaE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgsDbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsDaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsDak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsDa036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsDbU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgsDbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsDb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsDcE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsDcU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsDc036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgsDdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsDdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsDdk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsDd036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgsDhU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsDeU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsDe036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsDfU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgsDik36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsDf036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsDgU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsDg036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgsDhU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgsDhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgsDh036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgsDiE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgsDiU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgsDik36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgsDi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgsDjE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgsDjU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgsDjk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsnYE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgsnYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsnYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsnY036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsnZE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsnZk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsnaE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgsnYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsnaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsnak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsna036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsnbU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgsnYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsnbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsnb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsncE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsnck36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgsnc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsndE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsndU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsndk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsneE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsnek36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgsnck36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsne036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsnfU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgsnck36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsnfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsngE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgsnck36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsngU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsng036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgsDbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsnhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsnhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsnhk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsniE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgsniU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsnik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsni036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsnjE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsnjk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsnkE36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgsnkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsnkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsnk036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsnlE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsnlk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsnmE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgsnkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsnmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsnmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsnm036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsnnU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgsnkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsnnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsnn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsnoE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsnok36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgsno036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsnpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsnpU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsnpk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsnqE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsnqk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsnrE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsnrk36EeSS5u8wdxTIGg" name="computation">
          <eAnnotations xmi:id="_xgsnr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsnsE36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsnsk36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsntE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsntk36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgsnt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsnuE36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsnuk36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgsnu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsnvE36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgsnvk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_hXMMwE4bEeO1tu-9EBJwrw/250" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsnv036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgsnxE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsnwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsnwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsnwk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsnxE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgsnxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsnxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsnx036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsnyE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsnyk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgsny036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsnzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsnzU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsnzk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgsn3E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsn0E36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsn0k36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsn1E36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgsn4U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsn1k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsn2E36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsn2k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgsn3E36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgsn3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgsn3k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgsn3036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgsn4E36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgsn4U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgsn4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgsn4036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgsn5E36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgsn5U36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsn5k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgsn5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsn6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsn6U36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsn6k36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsn7E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsn7k36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgsn5k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsn7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsn8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsn8U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsn8036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgsn5k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsn9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsn9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsn9k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsn-E36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgsn-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsn-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsn-036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsn_E36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsn_k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoAE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgsn-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsoAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoA036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgsn-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsoBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoBk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgsn-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsoB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoCU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgsnxE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsoCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsoC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsoDE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoDk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgsoD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsoEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsoEU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsoEk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsoFE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoFk36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgsoF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsoGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsoGU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsoGk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsoHE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoHk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgsoFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsoH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsoIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsoIU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoI036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgsoFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsoJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsoJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsoJk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoKE36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgsoKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsoKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsoK036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsoLE36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsoLk36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsoME36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsoMk36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoNE36EeSS5u8wdxTIGg" name="computation">
          <eAnnotations xmi:id="_xgsoNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsoNk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsoOE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsoOk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoPE36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgsoPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsoPk36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoQE36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgsoQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsoQk36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgsoRE36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_fGZ14E4bEeO1tu-9EBJwrw/249" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoRU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgsoSk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsoRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsoR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsoSE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoSk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgsoS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsoTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsoTU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsoTk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoUE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgsoUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsoUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsoU036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsoVE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgsoYk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsoVk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsoWE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsoWk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgsoZ036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsoXE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsoXk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsoYE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgsoYk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgsoY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgsoZE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgsoZU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgsoZk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgsoZ036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgsoaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgsoaU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgsoak36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgsoa036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsobE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgsobU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsobk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsob036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsocE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsock36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsodE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgsobE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsodU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsodk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsod036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoeU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgsobE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsoek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsoe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsofE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsofk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgsof036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsogE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsogU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsogk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsohE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsohk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgsofk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsoh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoiU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgsofk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsoik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsojE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgsofk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsojU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoj036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgsoSk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsokE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsokU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsokk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsolE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgsolU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsolk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsol036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsomE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsomk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsonE36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgsonU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsonk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgson036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsooE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsook36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsopE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgsonE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsopU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsopk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsop036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoqU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgsonE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsoqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsoq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsorE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsork36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgsor036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsosE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsosU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsosk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsotE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsotk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsouE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsouk36EeSS5u8wdxTIGg" name="computation">
          <eAnnotations xmi:id="_xgsou036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsovE36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsovk36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsowE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsowk36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgsow036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsoxE36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoxk36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgsox036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsoyE36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgsoyk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_CtSEME4bEeO1tu-9EBJwrw/248" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsoy036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgso0E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsozE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsozU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsozk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgso0E36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgso0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgso0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgso0036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgso1E36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgso1k36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgso1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgso2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgso2U36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgso2k36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgso6E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgso3E36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgso3k36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgso4E36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgso7U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgso4k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgso5E36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgso5k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgso6E36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgso6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgso6k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgso6036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgso7E36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgso7U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgso7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgso7036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgso8E36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgso8U36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgso8k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgso8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgso9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgso9U36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgso9k36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgso-E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgso-k36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgso8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgso-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgso_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgso_U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgso_036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgso8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgspAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspAk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspBE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgspBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspB036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspCE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspCk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspDE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgspBE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgspDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspD036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgspBE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgspEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspEk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgspBE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgspE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspFU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgso0E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgspFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspGE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspGk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgspG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspHU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspHk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgspIE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspIk36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgspI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspJU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspJk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspKE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspKk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgspIk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgspK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspLU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspL036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgspIk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgspME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspMk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspNE36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgspNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspN036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspOE36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspOk36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspPE36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspPk36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspQE36EeSS5u8wdxTIGg" name="computation">
          <eAnnotations xmi:id="_xgspQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspQk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspRE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspRk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspSE36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgspSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspSk36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspTE36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgspTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspTk36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgspUE36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_8lEasE4YEeO1tu-9EBJwrw/247" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspUU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgspVk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgspUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspVE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspVk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgspV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspWU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspWk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspXE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgspXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspX036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgspYE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgspbk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgspYk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgspZE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgspZk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgspc036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgspaE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspak36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspbE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgspbk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgspb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgspcE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgspcU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgspck36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgspc036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgspdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgspdU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgspdk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgspd036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspeE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgspeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspe036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspfE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspfk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspgE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgspeE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgspgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspg036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsphU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgspeE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsphk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsph036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspiE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspik36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgspi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspjU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspjk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspkE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspkk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgspik36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgspk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsplU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgspik36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsplk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspmE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgspik36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgspmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspm036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgspVk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgspnE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspnU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspnk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspoE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgspoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspo036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsppE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsppk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspqE36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgspqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspq036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsprE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsprk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspsE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgspqE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgspsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsps036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsptU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgspqE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsptk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspuE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspuk36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgspu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgspvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgspvU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspvk36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspwE36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspwk36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspxE36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspxk36EeSS5u8wdxTIGg" name="computation">
          <eAnnotations xmi:id="_xgspx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspyE36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspyk36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgspzE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgspzk36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgspz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsp0E36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsp0k36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgsp0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsp1E36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgsp1k36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_YpfkME4YEeO1tu-9EBJwrw/246" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsp1036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgsp3E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsp2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsp2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsp2k36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsp3E36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgsp3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsp3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsp3036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsp4E36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsp4k36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgsp4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsp5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsp5U36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsp5k36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgsp9E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsp6E36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsp6k36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsp7E36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgsp-U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsp7k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsp8E36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsp8k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgsp9E36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgsp9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgsp9k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgsp9036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgsp-E36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgsp-U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgsp-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgsp-036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgsp_E36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgsp_U36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsp_k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgsp_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsqAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsqAU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsqAk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsqBE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsqBk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgsp_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsqB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsqCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsqCU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsqC036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgsp_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsqDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsqDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsqDk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsqEE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgsqEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsqEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsqE036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsqFE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsqFk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsqGE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgsqEE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsqGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsqG036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgsqEE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsqHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsqHk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgsqEE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsqH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsqIU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgsp3E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsqIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsqI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsqJE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsqJk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgsqJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsqKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsqKU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsqKk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgsqLE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsqLk36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgsqL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsqME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsqMU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsqMk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsqNE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsqNk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgsqLk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsqN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsqOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsqOU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsqO036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgsqLk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgsqPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsqPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsqPk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsqQE36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgsqQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgsqQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgsqQ036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsqRE36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsqRk36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsqSE36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgsqSk36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgsqTE36EeSS5u8wdxTIGg" name="computation">
          <eAnnotations xmi:id="_xgtOcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtOcU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtOc036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtOdU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtOd036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgtOeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtOeU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtOe036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgtOfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtOfU36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgtOf036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_OpyEsE4WEeO1tu-9EBJwrw/245" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtOgE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgtOhU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtOgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtOgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtOg036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtOhU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgtOhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtOh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtOiE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtOiU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtOi036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgtOjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtOjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtOjk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtOj036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgtOnU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtOkU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtOk036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtOlU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgtOok36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtOl036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtOmU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtOm036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgtOnU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgtOnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgtOn036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgtOoE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgtOoU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgtOok36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgtOo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgtOpE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgtOpU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgtOpk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtOp036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgtOqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtOqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtOqk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtOq036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtOrU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtOr036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgtOp036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtOsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtOsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtOsk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtOtE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgtOp036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtOtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtOtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtOt036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtOuU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgtOuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtOu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtOvE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtOvU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtOv036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtOwU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgtOuU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtOwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtOxE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgtOuU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtOxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtOx036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgtOuU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtOyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtOyk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgtOhU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtOy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtOzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtOzU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtOz036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgtO0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtO0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtO0k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtO0036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtO1U36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtO1036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgtO2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtO2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtO2k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtO2036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtO3U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtO3036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgtO1036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtO4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtO4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtO4k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtO5E36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgtO1036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtO5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtO5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtO5036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtO6U36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgtO6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtO6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtO7E36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtO7U36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtO7036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtO8U36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtO8036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtO9U36EeSS5u8wdxTIGg" name="computation">
          <eAnnotations xmi:id="_xgtO9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtO9036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtO-U36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtO-036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtO_U36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgtO_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtO_036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPAU36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgtPAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPA036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgtPBU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_pRY80E4TEeO1tu-9EBJwrw/244" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPBk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgtPC036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtPB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPCU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPC036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgtPDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPDk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPD036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPEU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgtPEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPFE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtPFU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgtPI036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtPF036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtPGU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtPG036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgtPKE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtPHU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPH036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPIU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgtPI036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgtPJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgtPJU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgtPJk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgtPJ036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgtPKE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgtPKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgtPKk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgtPK036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgtPLE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPLU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgtPLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPME36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPMU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPM036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPNU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgtPLU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtPNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPOE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPOk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgtPLU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtPO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPPU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPP036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgtPQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPQk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPQ036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPRU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPR036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgtPP036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtPSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPSk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgtPP036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtPS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPTU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgtPP036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtPTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPUE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgtPC036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtPUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPU036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPVU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgtPVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPWE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPWU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtPW036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPXU36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgtPXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPYE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPYU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPY036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPZU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgtPXU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtPZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPaE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPak36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgtPXU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtPa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPbU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPb036EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgtPcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPck36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPc036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPdU36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPd036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPeU36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPe036EeSS5u8wdxTIGg" name="computation">
          <eAnnotations xmi:id="_xgtPfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPfU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPf036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPgU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPg036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgtPhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPhU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPh036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgtPiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPiU36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgtPi036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_jpmAIE4OEeO1tu-9EBJwrw/243" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPjE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgtPkU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtPjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPj036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPkU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgtPkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPlE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPlU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPl036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgtPmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPmk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtPm036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgtPqU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtPnU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtPn036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtPoU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgtPrk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtPo036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPpU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPp036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgtPqU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgtPqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgtPq036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgtPrE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgtPrU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgtPrk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgtPr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgtPsE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgtPsU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgtPsk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPs036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgtPtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPtk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPt036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPuU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPu036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgtPs036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtPvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPvk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPwE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgtPs036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtPwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPw036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPxU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgtPxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtPx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtPyE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPyU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtPy036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtPzU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgtPxU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtPzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtP0E36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgtPxU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtP0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtP0036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgtPxU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtP1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtP1k36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgtPkU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtP1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtP2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtP2U36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtP2036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgtP3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtP3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtP3k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtP3036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtP4U36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtP4036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgtP5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtP5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtP5k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtP5036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtP6U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtP6036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgtP4036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtP7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtP7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtP7k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtP8E36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgtP4036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtP8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtP8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtP8036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtP9U36EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgtP9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtP9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtP-E36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtP-U36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtP-036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtP_U36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtP_036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQAU36EeSS5u8wdxTIGg" name="computation">
          <eAnnotations xmi:id="_xgtQAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQA036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQBU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQB036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQCU36EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgtQCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQC036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQDU36EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgtQDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQD036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgtQEU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_culkkE4IEeOm4cpPTMVSiw/242" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQEk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgtQF036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtQE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQFU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQF036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgtQGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQGk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQG036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQHU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgtQHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQIE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtQIU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgtQL036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtQI036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtQJU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtQJ036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgtQNE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtQKU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQK036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQLU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgtQL036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgtQME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgtQMU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgtQMk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgtQM036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgtQNE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgtQNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgtQNk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgtQN036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgtQOE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQOU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgtQOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQPE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQPU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQP036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQQU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgtQOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtQQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQRE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQRk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgtQOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtQR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQSU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQS036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgtQTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQTk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQT036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQUU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQU036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgtQS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtQVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQVk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgtQS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtQV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQWU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgtQS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtQWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQXE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgtQF036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtQXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQX036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQYU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgtQYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQZE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQZU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtQZ036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQaU36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgtQak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQbE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQbU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQb036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQcU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgtQaU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtQck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQdE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQdk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgtQaU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtQd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQeU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQe036EeSS5u8wdxTIGg" name="flow_controller">
          <eAnnotations xmi:id="_xgtQfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQfk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQf036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQgU36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQg036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQhU36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQh036EeSS5u8wdxTIGg" name="computation">
          <eAnnotations xmi:id="_xgtQiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQiU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQi036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQjU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQj036EeSS5u8wdxTIGg" name="decision">
          <eAnnotations xmi:id="_xgtQkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQkU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQk036EeSS5u8wdxTIGg" name="data_buffer">
          <eAnnotations xmi:id="_xgtQlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQlU36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgtQl036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_vXyw0E4HEeOm4cpPTMVSiw/241" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQmE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgtQnU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtQmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQm036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQnU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgtQnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQoE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQoU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQo036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgtQpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQpk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtQp036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgtQtU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtQqU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtQq036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtQrU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgtQuk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtQr036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQsU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQs036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgtQtU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgtQtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgtQt036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgtQuE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgtQuU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgtQuk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgtQu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgtQvE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgtQvU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgtQvk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQv036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgtQwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQwk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQw036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQxU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQx036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgtQv036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtQyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQyk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQzE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgtQv036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtQzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQz036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQ0U36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgtQ0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQ0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQ1E36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQ1U36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQ1036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQ2U36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgtQ0U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtQ2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQ3E36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgtQ0U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtQ3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQ3036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgtQ0U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtQ4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQ4k36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgtQnU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtQ4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQ5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQ5U36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQ5036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgtQ6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQ6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQ6k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQ6036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtQ7U36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQ7036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgtQ8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQ8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQ8k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQ8036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtQ9U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQ9036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgtQ7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtQ-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQ-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQ-k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtQ_E36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgtQ7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtQ_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtQ_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtQ_036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtRAU36EeSS5u8wdxTIGg" name="FlowController">
          <eAnnotations xmi:id="_xgtRAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtRA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtRBE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtRBU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtRB036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtRCU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtRC036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtRDU36EeSS5u8wdxTIGg" name="Computation">
          <eAnnotations xmi:id="_xgtRDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtRD036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtREU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtRE036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtRFU36EeSS5u8wdxTIGg" name="Condition">
          <eAnnotations xmi:id="_xgtRFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtRF036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtRGU36EeSS5u8wdxTIGg" name="DataBuffer">
          <eAnnotations xmi:id="_xgtRGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtRG036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgtRHU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_sEvEoE4HEeOm4cpPTMVSiw/240" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtRHk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgtRI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgtRH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtRIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtRIU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtRI036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgtRJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtRJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtRJk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtRJ036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgtRKU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgtRKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgtRK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgtRLE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtRLU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgtRO036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtRL036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtRMU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtRM036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgtRQE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgtRNU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtRN036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgtROU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgtRO036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgtRPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgtRPU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgtRPk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgtRP036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgtRQE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgtRQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgtRQk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgtRQ036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgt1gE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt1gU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgt1gk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt1g036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt1hE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt1hU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt1h036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt1iU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgt1gU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt1ik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt1i036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt1jE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt1jk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgt1gU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt1j036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt1kE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt1kU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt1k036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgt1lE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt1lU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt1lk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt1l036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt1mU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt1m036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgt1k036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt1nE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt1nk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgt1k036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt1n036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt1oU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgt1k036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt1ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt1pE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgtRI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt1pU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt1pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt1p036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt1qU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgt1qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt1q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt1rE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt1rU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt1r036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt1sU36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgt1sk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt1s036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt1tE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt1tU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt1t036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt1uU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgt1sU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt1uk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt1u036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt1vE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt1vk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgt1sU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt1v036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt1wE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt1wU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt1w036EeSS5u8wdxTIGg" name="FlowController">
          <eAnnotations xmi:id="_xgt1xE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt1xU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt1xk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt1x036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt1yU36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt1y036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt1zU36EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt1z036EeSS5u8wdxTIGg" name="Computation">
          <eAnnotations xmi:id="_xgt10E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt10U36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt10036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt11U36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt11036EeSS5u8wdxTIGg" name="Condition">
          <eAnnotations xmi:id="_xgt12E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt12U36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt12036EeSS5u8wdxTIGg" name="DataBuffer">
          <eAnnotations xmi:id="_xgt13E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt13U36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgt13036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_nM_SkE4HEeOm4cpPTMVSiw/239" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt14E36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgt15U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt14U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt14k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt14036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt15U36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgt15k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt15036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt16E36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt16U36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt16036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgt17E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt17U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt17k36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt17036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgt1_U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt18U36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt18036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt19U36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgt2Ak36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt19036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt1-U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt1-036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgt1_U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgt1_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgt1_036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgt2AE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgt2AU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgt2Ak36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgt2A036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgt2BE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgt2BU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgt2Bk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2B036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgt2CE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2CU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2Ck36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2C036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2DU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2D036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgt2B036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt2EE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2EU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2Ek36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2FE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgt2B036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt2FU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2Fk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2F036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2GU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgt2Gk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2G036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2HE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2HU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2H036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2IU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgt2GU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt2Ik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2JE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgt2GU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt2JU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2J036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgt2GU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt2KE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2Kk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgt15U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt2K036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2LE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2LU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2L036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgt2ME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2MU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2Mk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2M036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt2NU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2N036EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgt2OE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2OU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2Ok36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2O036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2PU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2P036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgt2N036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt2QE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2QU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2Qk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2RE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgt2N036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt2RU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2Rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2R036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2SU36EeSS5u8wdxTIGg" name="FlowController">
          <eAnnotations xmi:id="_xgt2Sk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2S036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2TE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2TU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2T036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2UU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2U036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2VU36EeSS5u8wdxTIGg" name="Computation">
          <eAnnotations xmi:id="_xgt2Vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2V036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2WU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2W036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2XU36EeSS5u8wdxTIGg" name="Condition">
          <eAnnotations xmi:id="_xgt2Xk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHe-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2X036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2YU36EeSS5u8wdxTIGg" name="DataBuffer">
          <eAnnotations xmi:id="_xgt2Yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHfCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2Y036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgt2ZU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_KXKlgE4BEeOm4cpPTMVSiw/238" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2Zk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgt2a036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt2Z036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2aE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2aU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2a036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgt2bE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2bU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2bk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2b036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2cU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgt2ck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2c036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2dE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt2dU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgt2g036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt2d036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt2eU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt2e036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgt2iE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt2fU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2f036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2gU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgt2g036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgt2hE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgt2hU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgt2hk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgt2h036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgt2iE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgt2iU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgt2ik36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgt2i036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgt2jE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2jU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgt2jk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2j036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2kE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2kU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2k036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2lU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgt2jU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt2lk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2l036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2mE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2mk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgt2jU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt2m036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2nE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2nU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2n036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgt2oE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2oU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2ok36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2o036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2pU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2p036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgt2n036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt2qE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2qk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgt2n036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt2q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2rU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgt2n036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt2rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2sE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgt2a036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt2sU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2sk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2s036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2tU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgt2tk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2t036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2uE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2uU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt2u036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2vU36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgt2vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2v036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2wE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2wU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2w036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2xU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgt2vU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt2xk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2x036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2yE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2yk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgt2vU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt2y036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt2zE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt2zU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt2z036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgt20E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt20U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt20k36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt20036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt21U36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt21036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt22U36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt22036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt23U36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt23036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt24U36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt24036EeSS5u8wdxTIGg" name="base_InitialNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InitialNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgt25U36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_jCXwcE4AEeOm4cpPTMVSiw/237" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt25k36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgt26036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt25036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt26E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt26U36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt26036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgt27E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt27U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt27k36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt27036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt28U36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgt28k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt28036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt29E36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt29U36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgt3A036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt29036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt2-U36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt2-036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgt3CE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt2_U36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt2_036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3AU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgt3A036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgt3BE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgt3BU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgt3Bk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgt3B036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgt3CE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgt3CU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgt3Ck36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgt3C036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgt3DE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3DU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgt3Dk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3D036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3EE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3EU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3E036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3FU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgt3DU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt3Fk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3F036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3GE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3Gk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgt3DU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt3G036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3HE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3HU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3H036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgt3IE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3IU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3Ik36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3I036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3JU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3J036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgt3H036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt3KE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3Kk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgt3H036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt3K036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3LU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgt3H036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt3Lk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3ME36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgt26036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt3MU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3Mk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3M036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3NU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgt3Nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3N036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3OE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3OU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt3O036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3PU36EeSS5u8wdxTIGg" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_xgt3Pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3P036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3QE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3QU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3Q036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3RU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgt3PU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt3Rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3R036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3SE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3Sk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgt3PU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt3S036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3TE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3TU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3T036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgt3UE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3UU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3Uk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3U036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3VU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3V036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3WU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3W036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3XU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3X036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3YU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgt3Y036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_Iq8wwE4AEeOm4cpPTMVSiw/236" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3ZE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgt3aU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt3ZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3Zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3Z036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3aU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgt3ak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3a036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3bE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3bU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3b036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgt3cE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3cU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3ck36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt3c036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgt3gU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt3dU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt3d036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt3eU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgt3hk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt3e036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3fU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3f036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgt3gU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgt3gk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgt3g036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgt3hE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgt3hU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgt3hk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgt3h036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgt3iE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgt3iU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgt3ik36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3i036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgt3jE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3jU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3jk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3j036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3kU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3k036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgt3i036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt3lE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3lU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3lk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3mE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgt3i036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt3mU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3mk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3m036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3nU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgt3nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3n036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3oE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3oU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3o036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3pU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgt3nU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt3pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3qE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgt3nU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt3qU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3q036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgt3nU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt3rE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3rk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgt3aU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt3r036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3sE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3sU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3s036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgt3tE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3tU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3tk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3t036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt3uU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3u036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgt3vE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3vU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3vk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3v036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3wU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3w036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgt3u036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt3xE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3xU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3xk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3yE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgt3u036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt3yU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt3y036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt3zU36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgt3zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt3z036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt30E36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt30U36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt30036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt31U36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt31036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt32U36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt32036EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt33U36EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt33036EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgt34U36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_YwuZ8E3eEeOm4cpPTMVSiw/235" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt34k36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgt35036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt34036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt35E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt35U36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt35036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgt36E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt36U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt36k36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt36036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt37U36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgt37k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt37036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt38E36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt38U36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgt3_036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt38036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt39U36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt39036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgt4BE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt3-U36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3-036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt3_U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgt3_036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgt4AE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgt4AU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgt4Ak36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgt4A036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgt4BE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgt4BU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgt4Bk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgt4B036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgt4CE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4CU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgt4Ck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4C036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4DE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4DU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4D036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4EU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgt4CU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt4Ek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4E036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4FE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4Fk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgt4CU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt4F036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4GE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4GU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4G036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgt4HE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4HU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4Hk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4H036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4IU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4I036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgt4G036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt4JE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4Jk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgt4G036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt4J036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4KU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgt4G036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt4Kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4LE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgt35036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt4LU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4Lk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4L036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4MU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgt4Mk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4M036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4NE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4NU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt4N036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4OU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgt4Ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4O036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4PE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4PU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4P036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4QU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgt4OU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt4Qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4Q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4RE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4Rk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgt4OU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt4R036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4SE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4SU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4S036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgt4TE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4TU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4Tk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4T036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4UU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4U036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4VU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4V036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4WU36EeSS5u8wdxTIGg" name="base_FinalNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//FinalNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4W036EeSS5u8wdxTIGg" name="base_ObjectFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectFlow"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4XU36EeSS5u8wdxTIGg" name="base_ControlFlow" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ControlFlow"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgt4X036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_7tIn0E1BEeOm4cpPTMVSiw/234" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4YE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgt4ZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt4YU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4Yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4Y036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4ZU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgt4Zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4Z036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4aE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4aU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4a036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgt4bE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4bU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4bk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt4b036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgt4fU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt4cU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt4c036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt4dU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgt4gk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt4d036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4eU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4e036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgt4fU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgt4fk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgt4f036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgt4gE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgt4gU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgt4gk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgt4g036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgt4hE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgt4hU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgt4hk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4h036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgt4iE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4iU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4ik36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4i036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4jU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4j036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgt4h036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt4kE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4kU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4kk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4lE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgt4h036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt4lU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4lk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4l036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4mU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgt4mk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4m036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4nE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4nU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4n036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4oU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgt4mU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt4ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4pE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgt4mU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt4pU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4p036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgt4mU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt4qE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4qk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgt4ZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt4q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4rE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4rU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4r036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgt4sE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4sU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4sk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4s036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgt4tU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4t036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgt4uE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4uU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4uk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4u036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4vU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4v036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgt4t036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt4wE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4wU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4wk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4xE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgt4t036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt4xU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4xk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4x036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt4yU36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgt4yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt4y036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt4zE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4zU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt4z036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt40U36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt40036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt41U36EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgt41036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_APEsUE0eEeOm4cpPTMVSiw/233" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt42E36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgt43U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgt42U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt42k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt42036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgt43U36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgt43k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgt43036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgt44E36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgt44U36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguckU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xguckk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguck036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguclE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xguclU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xguco036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgucl036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgucmU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgucm036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgucqE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgucnU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgucn036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgucoU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xguco036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgucpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgucpU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgucpk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgucp036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgucqE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgucqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgucqk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgucq036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgucrE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgucrU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgucrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgucr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgucsE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgucsU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgucs036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguctU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgucrU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xguctk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguct036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgucuE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgucuk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgucrU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgucu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgucvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgucvU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgucv036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgucwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgucwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgucwk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgucw036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgucxU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgucx036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgucv036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgucyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgucyk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgucv036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgucy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguczU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgucv036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xguczk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguc0E36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgt43U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xguc0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguc0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguc0036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguc1U36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xguc1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguc1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguc2E36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguc2U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xguc2036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguc3U36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xguc3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguc3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguc4E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguc4U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguc4036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguc5U36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xguc3U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xguc5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguc5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguc6E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguc6k36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xguc3U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xguc6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguc7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguc7U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguc7036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xguc8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguc8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguc8k36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguc8036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguc9U36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguc9036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguc-U36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguc-036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xguc_U36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_-DnpAEx7EeO1tu-9EBJwrw/232" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguc_k36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgudA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xguc_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudAU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudA036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgudBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudBk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudB036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudCU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgudCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudDE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgudDU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgudG036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgudD036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgudEU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgudE036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgudIE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgudFU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudF036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudGU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgudG036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgudHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgudHU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgudHk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgudH036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgudIE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgudIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgudIk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgudI036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgudJE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudJU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgudJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudKE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudKU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudK036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudLU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgudJU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgudLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudME36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudMk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgudJU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgudM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudNU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudN036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgudOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudOk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudO036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudPU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudP036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgudN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgudQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudQk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgudN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgudQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudRU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgudN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgudRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudSE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgudA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgudSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudS036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudTU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgudTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudUE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudUU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgudU036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudVU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgudVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudWE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudWU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudW036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudXU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgudVU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgudXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudYE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudYk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgudVU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgudY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudZU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudZ036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgudaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudak36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguda036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudbU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudb036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudcU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudc036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xguddU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_KyESkExxEeO1tu-9EBJwrw/231" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguddk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgude036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgudd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudeU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgude036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgudfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudfk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudf036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudgU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgudgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudhE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgudhU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgudk036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgudh036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgudiU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgudi036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgudmE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgudjU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudj036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudkU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgudk036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgudlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgudlU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgudlk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgudl036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgudmE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgudmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgudmk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgudm036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgudnE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudnU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgudnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudoE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudoU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudo036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudpU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgudnU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgudpk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudqE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudqk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgudnU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgudq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudrU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudr036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgudsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudsk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguds036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudtU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudt036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgudr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xguduE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguduk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgudr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgudu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudvU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgudr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgudvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudwE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgude036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgudwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudw036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudxU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgudxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgudyE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgudyU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgudy036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgudzU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgudzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgudz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgud0E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgud0U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgud0036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgud1U36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgudzU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgud1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgud1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgud2E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgud2k36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgudzU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgud2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgud3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgud3U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgud3036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgud4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgud4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgud4k36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgud4036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgud5U36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgud5036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgud6U36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgud6036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgud7U36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_lbC18ExpEeO1tu-9EBJwrw/230" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgud7k36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgud8036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgud7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgud8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgud8U36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgud8036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgud9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgud9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgud9k36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgud9036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgud-U36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgud-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgud-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgud_E36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgud_U36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgueC036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgud_036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgueAU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgueA036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgueEE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgueBU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgueB036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgueCU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgueC036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgueDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgueDU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgueDk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgueD036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgueEE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgueEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgueEk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgueE036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgueFE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgueFU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgueFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgueF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgueGE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgueGU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgueG036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgueHU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgueFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgueHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgueH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgueIE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgueIk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgueFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgueI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgueJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgueJU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgueJ036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgueKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgueKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgueKk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgueK036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgueLU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgueL036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgueJ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgueME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgueMk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgueJ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgueM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgueNU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgueJ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgueNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgueOE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgud8036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgueOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgueOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgueO036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguePU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xguePk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgueP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgueQE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgueQU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgueQ036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgueRU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgueRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgueR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgueSE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgueSU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgueS036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgueTU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgueRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgueTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgueT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgueUE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgueUk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgueRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgueU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgueVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgueVU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgueV036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgueWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgueWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgueWk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgueW036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgueXU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgueX036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgueYU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgueY036EeSS5u8wdxTIGg" name="base_CentralBufferNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//CentralBufferNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgueZU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_SeguwExOEeO1tu-9EBJwrw/229" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgueZk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xguea036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgueZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgueaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgueaU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguea036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xguebE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguebU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguebk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgueb036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguecU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgueck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguec036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguedE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xguedU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgueg036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgued036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgueeU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xguee036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgueiE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xguefU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguef036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguegU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgueg036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xguehE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xguehU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xguehk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgueh036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgueiE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgueiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgueik36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xguei036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xguejE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguejU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xguejk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguej036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguekE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguekU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguek036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguelU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xguejU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xguelk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguel036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguemE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguemk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xguejU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xguem036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguenE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguenU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguen036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgueoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgueoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgueok36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgueo036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguepU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguep036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xguen036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgueqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgueqk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xguen036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgueq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguerU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xguen036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xguerk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguesE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xguea036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xguesU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguesk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgues036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguetU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xguetk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguet036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgueuE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgueuU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgueu036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguevU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xguevk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguev036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguewE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguewU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguew036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguexU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xguevU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xguexk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguex036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgueyE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgueyk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xguevU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xguey036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguezE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguezU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguez036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgue0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgue0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgue0k36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgue0036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgue1U36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgue1036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgue2U36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgue2036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_Bp2N0ExFEeO1tu-9EBJwrw/228" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgue3E36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgue4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgue3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgue3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgue3036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgue4U36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgue4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgue4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgue5E36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgue5U36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgue5036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgue6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgue6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgue6k36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgue6036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgue-U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgue7U36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgue7036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgue8U36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgue_k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgue8036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgue9U36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgue9036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgue-U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgue-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgue-036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgue_E36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgue_U36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgue_k36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgue_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgufAE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgufAU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgufAk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufA036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgufBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufBk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufB036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufCU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufC036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgufA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgufDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufDk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufEE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgufA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgufEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufE036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufFU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgufFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufGE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufGU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufG036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufHU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgufFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgufHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufIE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgufFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgufIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufI036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgufFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgufJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufJk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgue4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgufJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufKU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufK036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgufLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufLk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufL036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgufMU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufM036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgufNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufNk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufN036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufOU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufO036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgufM036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgufPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufPk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufQE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgufM036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgufQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufQ036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufRU36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgufRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufSE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufSU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufS036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufTU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufT036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgufUU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_vTp5oExEEeO1tu-9EBJwrw/227" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufUk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgufV036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgufU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufVU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufV036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgufWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufWk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufW036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufXU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgufXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufYE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgufYU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgufb036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgufY036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgufZU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgufZ036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgufdE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgufaU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufa036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufbU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgufb036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgufcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgufcU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgufck36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgufc036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgufdE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgufdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgufdk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgufd036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgufeE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufeU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgufek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguffE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguffU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguff036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufgU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgufeU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgufgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufhE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufhk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgufeU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgufh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufiU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufi036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgufjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufjk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufj036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufkU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufk036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgufi036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xguflE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguflk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgufi036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgufl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufmU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgufi036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgufmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufnE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgufV036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgufnU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufn036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufoU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgufok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufpE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufpU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgufp036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufqU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgufqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufrE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufrU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufr036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufsU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgufqU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgufsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguftE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguftk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgufqU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xguft036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufuU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufu036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgufvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufvk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufv036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufwU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufw036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgufxU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgufx036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_oCjVcExCEeO1tu-9EBJwrw/226" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufyE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgufzU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgufyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgufy036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgufzU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgufzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgufz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguf0E36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguf0U36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguf0036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xguf1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguf1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguf1k36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xguf1036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xguf5U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xguf2U36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xguf2036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xguf3U36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xguf6k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xguf3036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguf4U36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguf4036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xguf5U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xguf5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xguf5036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xguf6E36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xguf6U36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xguf6k36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xguf6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xguf7E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xguf7U36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xguf7k36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguf7036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xguf8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguf8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguf8k36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguf8036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xguf9U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguf9036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xguf7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xguf-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguf-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguf-k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xguf_E36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xguf7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xguf_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xguf_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xguf_036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgugAU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgvDoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvDoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvDok36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvDo036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvDpU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvDp036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgugAU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvDqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvDqk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgugAU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvDq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvDrU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgugAU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvDrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvDsE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgufzU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvDsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvDsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvDs036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvDtU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgvDtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvDt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvDuE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvDuU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvDu036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvDvU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgvDvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvDv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvDwE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvDwU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvDw036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvDxU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgvDvU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvDxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvDx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvDyE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvDyk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgvDvU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvDy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvDzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvDzU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvDz036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgvD0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvD0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvD0k36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvD0036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvD1U36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvD1036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvD2U36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgvD2036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_aoI-EErqEeOtQtqAIXVjaw/225" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvD3E36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgvD4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvD3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvD3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvD3036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvD4U36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgvD4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvD4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvD5E36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvD5U36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvD5036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgvD6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvD6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvD6k36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvD6036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgvD-U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvD7U36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvD7036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvD8U36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgvD_k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvD8036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvD9U36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvD9036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvD-U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgvD-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvD-036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvD_E36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgvD_U36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvD_k36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgvD_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvEAE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvEAU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgvEAk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEA036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgvEBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEBk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvEB036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvECU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEC036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgvEA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvEDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEDk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEEE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgvEA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvEEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEE036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEFU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgvEFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEGE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvEGU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvEG036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEHU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgvEFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvEHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEIE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgvEFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvEIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEI036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgvEFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvEJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEJk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgvD4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvEJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEKU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEK036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgvELE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvELU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvELk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvEL036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvEMU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEM036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgvENE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvENU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvENk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvEN036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvEOU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEO036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgvEM036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvEPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEPk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEQE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgvEM036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvEQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEQ036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvERU36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgvERk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvER036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvESE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvESU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvES036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvETU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvET036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgvEUU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_G_eEQEq8EeOKpLNQ4yMd7Q/224" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEUk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgvEV036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvEU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEVU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEV036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgvEWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEWk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvEW036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEXU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgvEXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEYE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvEYU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgvEb036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvEY036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvEZU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvEZ036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgvEdE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvEaU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvEa036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvEbU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvEb036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgvEcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvEcU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvEck36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgvEc036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvEdE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgvEdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvEdk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvEd036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgvEeE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEeU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgvEek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEfE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvEfU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvEf036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEgU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgvEeU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvEgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEhE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEhk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgvEeU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvEh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEiU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEi036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgvEjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEjk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvEj036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvEkU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEk036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgvEi036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvElE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvElk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgvEi036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvEl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEmU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgvEi036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvEmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEnE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgvEV036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvEnU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEn036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEoU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgvEok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEpE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvEpU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvEp036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEqU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgvEqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvErE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvErU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvEr036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEsU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgvEqU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvEsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEtE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEtk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgvEqU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvEt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEuU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEu036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgvEvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEvk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvEv036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvEwU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvEw036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvExU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgvEx036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_z-xsACt2EeOCxugl5pYtow/223" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEyE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgvEzU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvEyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvEy036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvEzU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgvEzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvEz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvE0E36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvE0U36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvE0036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgvE1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvE1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvE1k36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvE1036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgvE5U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvE2U36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvE2036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvE3U36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgvE6k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvE3036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvE4U36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvE4036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvE5U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgvE5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvE5036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvE6E36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgvE6U36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvE6k36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgvE6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvE7E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvE7U36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgvE7k36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvE7036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgvE8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvE8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvE8k36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvE8036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvE9U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvE9036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgvE7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvE-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvE-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvE-k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvE_E36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgvE7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvE_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvE_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvE_036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFAU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgvFAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFBE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFBU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFB036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFCU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgvFAU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvFCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFDE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgvFAU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvFDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFD036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgvFAU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvFEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFEk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgvEzU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvFE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFFU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFF036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgvFGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFGk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFG036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvFHU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFH036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgvFIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFIk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFI036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFJU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFJ036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgvFH036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvFKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFKk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFLE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgvFH036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvFLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFL036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFMU36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgvFMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFNE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFNU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFN036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFOU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFO036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgvFPU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_r8QAACt2EeOCxugl5pYtow/222" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFPk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgvFQ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvFP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFQU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFQ036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgvFRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFRk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFR036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFSU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgvFSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFTE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvFTU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgvFW036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvFT036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvFUU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvFU036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgvFYE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvFVU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFV036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFWU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvFW036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgvFXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvFXU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvFXk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgvFX036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvFYE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgvFYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvFYk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvFY036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgvFZE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFZU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgvFZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFaE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFaU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFa036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFbU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgvFZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvFbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFcE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFck36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgvFZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvFc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFdU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFd036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgvFeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFek36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFe036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFfU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFf036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgvFd036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvFgE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFgk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgvFd036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvFg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFhU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgvFd036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvFhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFiE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgvFQ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvFiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFi036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFjU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgvFjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFkE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFkU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvFk036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFlU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgvFlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFmE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFmU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFm036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFnU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgvFlU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvFnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFoE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFok36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgvFlU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvFo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFpU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFp036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgvFqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFqk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFq036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFrU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFr036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFsU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgvFs036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_3lAdwCt0EeOCxugl5pYtow/221" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFtE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgvFuU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvFtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFt036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFuU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgvFuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFvE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFvU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvFv036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgvFwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvFwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvFwk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvFw036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgvF0U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvFxU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvFx036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvFyU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgvF1k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvFy036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFzU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvFz036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvF0U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgvF0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvF0036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvF1E36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgvF1U36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvF1k36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgvF1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvF2E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvF2U36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgvF2k36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvF2036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgvF3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvF3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvF3k36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvF3036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvF4U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvF4036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgvF2036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvF5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvF5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvF5k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvF6E36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgvF2036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvF6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvF6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvF6036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvF7U36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgvF7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvF7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvF8E36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvF8U36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvF8036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvF9U36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgvF7U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvF9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvF-E36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgvF7U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvF-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvF-036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgvF7U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvF_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvF_k36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgvFuU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvF_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGAU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGA036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgvGBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGBk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGB036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvGCU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGC036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgvGDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGDk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGD036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGEU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGE036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgvGC036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvGFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGFk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGGE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgvGC036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvGGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGG036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGHU36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgvGHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGIE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGIU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGI036EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGJU36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGJ036EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgvGKU36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_iTKtQCtzEeOCxugl5pYtow/220" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGKk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgvGL036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvGK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGLU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGL036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgvGME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGMk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGM036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGNU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgvGNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGOE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvGOU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgvGR036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvGO036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvGPU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvGP036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgvGTE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvGQU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGQ036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGRU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvGR036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgvGSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvGSU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvGSk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgvGS036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvGTE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgvGTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvGTk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvGT036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgvGUE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGUU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgvGUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGVE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGVU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGV036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGWU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgvGUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvGWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGXE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGXk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgvGUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvGX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGYU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGY036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgvGZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGZk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGZ036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGaU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGa036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgvGY036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvGbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGbk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgvGY036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvGb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGcU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgvGY036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvGck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGdE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgvGL036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvGdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGd036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGeU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgvGek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGfE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGfU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvGf036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGgU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgvGgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGhE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGhU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGh036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGiU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgvGgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvGik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGjE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGjk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgvGgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvGj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGkU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGk036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgvGlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGlU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGlk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGl036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGmU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGm036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGnU36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgvGn036EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_rosHoCtyEeOCxugl5pYtow/219" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGoE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgvGpU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvGoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGo036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGpU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgvGpk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGqE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGqU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGq036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgvGrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGrk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvGr036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgvGvU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvGsU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvGs036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvGtU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgvGwk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvGt036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGuU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGu036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvGvU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgvGvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvGv036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvGwE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgvGwU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvGwk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgvGw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvGxE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvGxU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgvGxk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGx036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgvGyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvGyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvGyk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGy036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvGzU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvGz036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgvGx036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvG0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvG0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvG0k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvG1E36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgvGx036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvG1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvG1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvG1036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvG2U36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgvG2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvG2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvG3E36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvG3U36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvG3036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvG4U36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgvG2U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvG4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvG5E36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgvG2U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvG5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvG5036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgvG2U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvG6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvG6k36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgvGpU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvG6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvG7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvqsE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvqsk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgvqs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvqtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvqtU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvqtk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvquE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvquk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgvqu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvqvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvqvU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvqvk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvqwE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvqwk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgvquk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvqw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvqxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvqxU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvqx036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgvquk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvqyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvqyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvqyk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvqzE36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgvqzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvqzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvqz036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvq0E36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvq0k36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvq1E36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvq1k36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgvq2E36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_lVgSUCtyEeOCxugl5pYtow/218" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvq2U36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgvq3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvq2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvq2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvq3E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvq3k36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgvq3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvq4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvq4U36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvq4k36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvq5E36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgvq5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvq5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvq5036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvq6E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgvq9k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvq6k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvq7E36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvq7k36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgvq-036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvq8E36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvq8k36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvq9E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvq9k36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgvq9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvq-E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvq-U36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgvq-k36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvq-036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgvq_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvq_U36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvq_k36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgvq_036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrAE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgvrAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrA036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrBE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrBk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrCE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgvrAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvrCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrC036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrDU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgvrAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvrDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrEE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrEk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgvrE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrFU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrFk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrGE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrGk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgvrEk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvrG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrHU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgvrEk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvrHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrIE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgvrEk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvrIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrI036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgvq3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvrJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrJk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrKE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgvrKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrK036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.activity.node->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrLE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvrLk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrME36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgvrMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrM036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrNE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrNk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrOE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgvrME36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvrOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrO036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrPU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgvrME36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvrPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrQE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrQk36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgvrQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrRU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrRk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrSE36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrSk36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrTE36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgvrTk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_6ya8UCtxEeOCxugl5pYtow/217" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrT036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgvrVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvrUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrUk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrVE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgvrVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrV036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrWE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrWk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgvrW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrXU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvrXk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgvrbE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvrYE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvrYk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvrZE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgvrcU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvrZk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvraE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrak36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvrbE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgvrbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvrbk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvrb036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgvrcE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvrcU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgvrck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvrc036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvrdE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgvrdU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrdk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgvrd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvreE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvreU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrek36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrfE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrfk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgvrdk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvrf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrgE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrgU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrg036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgvrdk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvrhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrhk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvriE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgvriU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvri036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrjE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrjk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrkE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgvriE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvrkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrk036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgvriE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvrlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrlk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgvriE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvrl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrmU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgvrVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvrmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrnE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrnk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgvrn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvroE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvroU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined() )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrok36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvrpE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrpk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgvrp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrqU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrqk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrrE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrrk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgvrpk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvrr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrsU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrs036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgvrpk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvrtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrtk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvruE36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgvruU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvruk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvru036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrvE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrvk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrwE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrwk36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgvrxE36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_vr3McBr7EeORkuHPTu-OVg/216" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvrxU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgvryk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvrxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvryE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvryk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgvry036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvrzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvrzU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvrzk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvr0E36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgvr0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvr0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvr0036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvr1E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgvr4k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvr1k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvr2E36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvr2k36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgvr5036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvr3E36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvr3k36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvr4E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvr4k36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgvr4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvr5E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvr5U36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgvr5k36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvr5036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgvr6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvr6U36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvr6k36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgvr6036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvr7E36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgvr7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvr7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvr7036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvr8E36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvr8k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvr9E36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgvr7E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvr9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvr9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvr9036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvr-U36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgvr7E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvr-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvr-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvr_E36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvr_k36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgvr_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvsAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsAU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsAk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsBE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsBk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgvr_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvsB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsCU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgvr_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvsCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsDE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgvr_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvsDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsD036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgvryk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvsEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvsEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsEk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsFE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgvsFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvsFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsF036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsGE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvsGk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsHE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgvsHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvsHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsH036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsIE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsIk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsJE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgvsHE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvsJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvsJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsJ036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsKU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgvsHE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvsKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvsK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsLE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsLk36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgvsL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvsME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsMU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsMk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsNE36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsNk36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsOE36EeSS5u8wdxTIGg" name="base_DecisionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DecisionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgvsOk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_FL5SUBrvEeOOFvgOs7ZuAw/215" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsO036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgvsQE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvsPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvsPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsPk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsQE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgvsQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvsQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsQ036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsRE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsRk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgvsR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvsSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsSU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvsSk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgvsWE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvsTE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvsTk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvsUE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgvsXU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvsUk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsVE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsVk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvsWE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgvsWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvsWk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvsW036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgvsXE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvsXU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgvsXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvsX036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvsYE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgvsYU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsYk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgvsY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvsZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsZU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsZk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsaE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsak36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgvsYk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvsa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvsbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsbU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsb036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgvsYk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvscE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvscU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsck36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsdE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgvsdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvsdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsd036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvseE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsek36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsfE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgvsdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvsfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsf036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgvsdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvsgE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsgk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgvsdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvsg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvshU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgvsQE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvshk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvsh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsiE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsik36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgvsi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvsjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsjU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsjk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvskE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvskk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgvsk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvslE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvslU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvslk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsmE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsmk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgvskk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvsm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvsnE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsnU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsn036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgvskk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvsoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvsoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsok36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvspE36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgvspU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvspk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsp036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsqE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsqk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsrE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgvsrk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_1U1ekBrkEeOOFvgOs7ZuAw/214" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsr036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgvstE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvssE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvssU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvssk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvstE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgvstU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvstk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvst036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsuE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvsuk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgvsu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvsvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvsvU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvsvk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgvszE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvswE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvswk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvsxE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgvs0U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvsxk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsyE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvsyk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvszE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgvszU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvszk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvsz036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgvs0E36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvs0U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgvs0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvs0036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvs1E36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgvs1U36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvs1k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgvs1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvs2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvs2U36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvs2k36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvs3E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvs3k36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgvs1k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvs3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvs4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvs4U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvs4036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgvs1k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvs5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvs5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvs5k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvs6E36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgvs6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvs6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvs6036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvs7E36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvs7k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvs8E36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgvs6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvs8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvs8036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgvs6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvs9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvs9k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgvs6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvs9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvs-U36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgvstE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvs-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvs-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvs_E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvs_k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgvs_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvtAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvtAU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvtAk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvtBE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtBk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgvtB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvtCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvtCU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvtCk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvtDE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtDk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgvtBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvtD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvtEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvtEU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtE036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgvtBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvtFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvtFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvtFk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtGE36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgvtGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvtGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvtG036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvtHE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvtHk36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvtIE36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgvtIk36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_-SUMYBrjEeOOFvgOs7ZuAw/213" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtI036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgvtKE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvtJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvtJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvtJk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtKE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgvtKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvtKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvtK036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvtLE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtLk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgvtL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvtME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvtMU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvtMk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgvtQE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvtNE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvtNk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvtOE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgvtRU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvtOk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvtPE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvtPk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvtQE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgvtQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvtQk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvtQ036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgvtRE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgvtRU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgvtRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgvtR036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgvtSE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgvtSU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtSk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgvtS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvtTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvtTU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvtTk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvtUE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtUk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgvtSk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvtU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvtVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvtVU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtV036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgvtSk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvtWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvtWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvtWk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtXE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgvtXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvtXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvtX036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvtYE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvtYk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtZE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgvtXE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvtZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtZ036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgvtXE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvtaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtak36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgvtXE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvta036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtbU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgvtbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgvtb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvtcE36EeSS5u8wdxTIGg" key="documentation" value="let set_of_pin_types : Set(uml::Stereotype) = &#x9;self.base_Pin.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date'),&#xA;&#x9; set_of_param_types : Set(uml::Stereotype) = &#x9;self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;if (self.base_Pin.oclIsKindOf(uml::Pin)) then&#xA;&#x9;set_of_pin_types->size() = 1&#xA;else&#xA;&#x9;if (self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;&#x9;set_of_param_types->size() = 1&#xA;&#x9;else&#xA;&#x9;&#x9;set_of_pin_types->size() = 0 and &#xA;&#x9;&#x9;set_of_param_types->size() = 0&#xA;&#x9;endif&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvtcU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvtc036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtdU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgvtbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvtdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvteE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgvtbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvteU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvte036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgvtbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvtfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtfk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgvtbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvtf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtgU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgvtbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvtgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvthE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgvtbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvthU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvth036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgvtKE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvtiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvtiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvtik36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtjE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgvtjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvtjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvtj036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvtkE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgvtkk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtlE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgvtlU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvtlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgvtl036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvtmE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgvtmk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgvtnE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgvtlE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgvtnU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgvtnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwRwE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwRwk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgvtlE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwRw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwRxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwRxU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwRx036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgvtbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwRyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwRyk36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgwRy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwRzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwRzU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwRzk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwR0E36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwR0k36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgwR1E36EeSS5u8wdxTIGg" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_zoYZQBrjEeOOFvgOs7ZuAw/212" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwR1U36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgwR2k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwR1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwR1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwR2E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwR2k36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgwR2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwR3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwR3U36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwR3k36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwR4E36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgwR4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwR4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwR4036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getACTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedSteCTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedSteCTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwR5E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgwR8k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwR5k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwR6E36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwR6k36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgwR9036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwR7E36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwR7k36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwR8E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgwR8k36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgwR8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgwR9E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgwR9U36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgwR9k36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgwR9036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgwR-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgwR-U36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgwR-k36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgwR-036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwR_E36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgwR_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwR_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwR_036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwSAE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwSAk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSBE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgwR_E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwSBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwSB036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSCU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgwR_E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwSC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwSDE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSDk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgwSD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwSEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwSEU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwSEk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwSFE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSFk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgwSDk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSGU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgwSDk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSHE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgwSDk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSH036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgwSIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgwSIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwSIk36EeSS5u8wdxTIGg" key="documentation" value="let set_of_pin_types : Set(uml::Stereotype) = &#x9;self.base_Pin.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date'),&#xA;&#x9; set_of_param_types : Set(uml::Stereotype) = &#x9;self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;if (self.base_Pin.oclIsKindOf(uml::Pin)) then&#xA;&#x9;set_of_pin_types->size() = 1&#xA;else&#xA;&#x9;if (self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;&#x9;set_of_param_types->size() = 1&#xA;&#x9;else&#xA;&#x9;&#x9;set_of_pin_types->size() = 0 and &#xA;&#x9;&#x9;set_of_param_types->size() = 0&#xA;&#x9;endif&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwSI036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwSJU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSJ036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgwSH036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSKk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgwSH036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSLU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgwSH036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSME36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgwSH036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSM036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgwSH036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSNk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgwSH036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSOU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgwR2k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwSO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwSPE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSPk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgwSP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwSQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwSQU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwSQk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwSRE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSRk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgwSR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwSSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwSSU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwSSk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwSTE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSTk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgwSRk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwST036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwSUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwSUU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSU036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgwSRk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwSVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwSVk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSWE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgwSH036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSW036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgwSXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwSXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwSXk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwSX036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwSYU36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwSY036EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgwSZU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_M3GGcBrOEeO3FtpFWfDEnw/211" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSZk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgwSa036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwSaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwSaU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSa036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgwSbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwSbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwSbk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwSb036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwScU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgwSck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwSc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwSdE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwSdU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgwSg036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwSd036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwSeU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwSe036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgwSiE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwSfU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwSf036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwSgU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgwSg036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgwShE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgwShU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgwShk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgwSh036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgwSiE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgwSiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgwSik36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgwSi036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgwSjE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSjU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgwSjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwSj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwSkE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwSkU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwSk036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSlU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgwSjU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwSl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwSmE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSmk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgwSjU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwSnE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwSnU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSn036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgwSoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwSoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwSok36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwSo036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwSpU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSp036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgwSn036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSqk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgwSn036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSrU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgwSn036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSsE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgwSsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgwSsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwSs036EeSS5u8wdxTIGg" key="documentation" value="let set_of_pin_types : Set(uml::Stereotype) = &#x9;self.base_Pin.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date'),&#xA;&#x9; set_of_param_types : Set(uml::Stereotype) = &#x9;self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;if (self.base_Pin.oclIsKindOf(uml::Pin)) then&#xA;&#x9;set_of_pin_types->size() = 1&#xA;else&#xA;&#x9;if (self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;&#x9;set_of_param_types->size() = 1&#xA;&#x9;else&#xA;&#x9;&#x9;set_of_pin_types->size() = 0 and &#xA;&#x9;&#x9;set_of_param_types->size() = 0&#xA;&#x9;endif&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwStE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwStk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSuE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgwSsE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSu036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgwSsE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSvk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgwSsE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSwU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgwSsE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSxE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgwSsE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSx036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgwSsE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSyk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgwSa036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwSy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwSzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwSzU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwSz036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgwS0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwS0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwS0k36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwS0036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwS1U36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwS1036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgwS2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwS2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwS2k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwS2036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwS3U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwS3036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgwS1036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwS4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwS4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwS4k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwS5E36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgwS1036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwS5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwS5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwS5036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwS6U36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgwSsE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwS6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwS7E36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgwS7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwS7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwS7036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwS8E36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwS8k36EeSS5u8wdxTIGg" name="base_ExpansionRegion" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionRegion"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwS9E36EeSS5u8wdxTIGg" name="base_ExpansionNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ExpansionNode"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgwS9k36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_6WAJ0BrNEeO3FtpFWfDEnw/210" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwS9036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgwS_E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwS-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwS-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwS-k36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwS_E36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgwS_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwS_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwS_036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTAE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTAk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgwTA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwTBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwTBU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwTBk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgwTFE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwTCE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwTCk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwTDE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgwTGU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwTDk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTEE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTEk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgwTFE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgwTFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgwTFk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgwTF036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgwTGE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgwTGU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgwTGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgwTG036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgwTHE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgwTHU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTHk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgwTH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwTIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwTIU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTIk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTJE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTJk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgwTHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwTKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwTKU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTK036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgwTHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwTLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwTLk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTME36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgwTMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwTMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwTM036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTNE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTNk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTOE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgwTME36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTO036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgwTME36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTPk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgwTME36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTQU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgwTQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgwTQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwTRE36EeSS5u8wdxTIGg" key="documentation" value="let set_of_pin_types : Set(uml::Stereotype) = &#x9;self.base_Pin.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date'),&#xA;&#x9; set_of_param_types : Set(uml::Stereotype) = &#x9;self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;if (self.base_Pin.oclIsKindOf(uml::Pin)) then&#xA;&#x9;set_of_pin_types->size() = 1&#xA;else&#xA;&#x9;if (self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;&#x9;set_of_param_types->size() = 1&#xA;&#x9;else&#xA;&#x9;&#x9;set_of_pin_types->size() = 0 and &#xA;&#x9;&#x9;set_of_param_types->size() = 0&#xA;&#x9;endif&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTRU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTR036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTSU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgwTQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTTE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgwTQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTT036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgwTQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTUk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgwTQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTVU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgwTQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTWE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgwTQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTW036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgwS_E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwTXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwTXk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTYE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgwTYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwTYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwTY036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTZE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwTZk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTaE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgwTaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwTak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwTa036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTbE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTbk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTcE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgwTaE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwTck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwTc036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTdU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgwTaE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwTd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwTeE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTek36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgwTQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTfU36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgwTfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwTf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwTgE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTgU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgwTg036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_EMKo4BlpEeOVy4eWE0NqJw/209" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwThE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgwTiU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwThU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwThk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwTh036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTiU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgwTik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwTi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwTjE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTjU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTj036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgwTkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwTkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwTkk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwTk036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgwToU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwTlU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwTl036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwTmU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgwTpk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwTm036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTnU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTn036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgwToU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgwTok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgwTo036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgwTpE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgwTpU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgwTpk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgwTp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgwTqE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgwTqU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgwTqk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTq036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgwTrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwTrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwTrk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTr036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTsU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTs036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgwTq036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwTtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwTtk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTuE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgwTq036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwTuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwTu036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTvU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgwTvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwTv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwTwE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTwU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwTw036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTxU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgwTvU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTyE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgwTvU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTy036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgwTvU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwTzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwTzk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgwTz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgwT0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwT0U36EeSS5u8wdxTIGg" key="documentation" value="let set_of_pin_types : Set(uml::Stereotype) = &#x9;self.base_Pin.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date'),&#xA;&#x9; set_of_param_types : Set(uml::Stereotype) = &#x9;self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;if (self.base_Pin.oclIsKindOf(uml::Pin)) then&#xA;&#x9;set_of_pin_types->size() = 1&#xA;else&#xA;&#x9;if (self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;&#x9;set_of_param_types->size() = 1&#xA;&#x9;else&#xA;&#x9;&#x9;set_of_pin_types->size() = 0 and &#xA;&#x9;&#x9;set_of_param_types->size() = 0&#xA;&#x9;endif&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwT0k36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwT1E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwT1k36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgwTzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwT1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwT2U36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgwTzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwT2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwT3E36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgwTzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwT3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwT3036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgwTzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwT4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwT4k36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgwTzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwT4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwT5U36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgwTzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwT5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwT6E36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgwTiU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwT6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwT6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwT6036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwT7U36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgwT7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwT7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwT8E36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwT8U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwT8036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwT9U36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgwT9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwT9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwT-E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwT-U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwT-036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwT_U36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgwT9U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwT_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwT_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwUAE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUAk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgwT9U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwUA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwUBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwUBU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUB036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgwTzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwUCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUCk36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgwUC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwUDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwUDU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwUDk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgwUEE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_kZqIQBliEeOVy4eWE0NqJw/208" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUEU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgwUFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwUEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwUE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwUFE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUFk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgwUF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwUGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwUGU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwUGk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUHE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgwUHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwUHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwUH036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwUIE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgwULk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwUIk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwUJE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwUJk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgwUM036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwUKE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwUKk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwULE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgwULk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgwUL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgwUME36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgwUMU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgwUMk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgwUM036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgwUNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgwUNU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgwUNk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgwUN036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUOE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgwUOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwUOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwUO036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwUPE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwUPk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUQE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgwUOE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwUQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwUQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwUQ036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwURU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgwUOE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwURk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwUR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwUSE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUSk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgwUS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwUTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwUTU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwUTk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwUUE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUUk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgwUSk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwUU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUVU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgwUSk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwUVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUWE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgwUSk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwUWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUW036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgwUXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgwUXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwUXk36EeSS5u8wdxTIGg" key="documentation" value="let set_of_pin_types : Set(uml::Stereotype) = &#x9;self.base_Pin.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date'),&#xA;&#x9; set_of_param_types : Set(uml::Stereotype) = &#x9;self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;if (self.base_Pin.oclIsKindOf(uml::Pin)) then&#xA;&#x9;set_of_pin_types->size() = 1&#xA;else&#xA;&#x9;if (self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;&#x9;set_of_param_types->size() = 1&#xA;&#x9;else&#xA;&#x9;&#x9;set_of_pin_types->size() = 0 and &#xA;&#x9;&#x9;set_of_param_types->size() = 0&#xA;&#x9;endif&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwUX036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwUYU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUY036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgwUW036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwUZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUZk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgwUW036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwUZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUaU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgwUW036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwUak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUbE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgwUW036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwUbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUb036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgwUW036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwUcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUck36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgwUW036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwUc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUdU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgwUFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwUdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwUd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwUeE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUek36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgwUe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwUfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwUfU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwUfk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgwUgE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUgk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgwUg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwUhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwUhU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwUhk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgwUiE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUik36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgwUgk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwUi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwUjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwUjU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUj036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgwUgk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwUkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwUkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgwUkk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUlE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgwUW036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgwUlU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgwUl036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgwUmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgwUmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw40E36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw40U36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgw40036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_vY6gkBlhEeOVy4eWE0NqJw/207" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw41E36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgw42U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw41U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw41k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw41036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw42U36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgw42k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw42036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw43E36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw43U36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw43036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgw44E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw44U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw44k36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw44036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgw48U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw45U36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw45036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw46U36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgw49k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw46036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw47U36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw47036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgw48U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgw48k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgw48036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgw49E36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgw49U36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgw49k36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgw49036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgw4-E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgw4-U36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgw4-k36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw4-036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgw4_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw4_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw4_k36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw4_036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw5AU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5A036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgw4-036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5BE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw5BU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5Bk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5CE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgw4-036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5CU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw5Ck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5C036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5DU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgw5Dk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw5D036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5EE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw5EU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw5E036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5FU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgw5DU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5Fk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5GE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgw5DU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5GU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5G036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgw5DU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5HE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5Hk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgw5H036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgw5IE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5IU36EeSS5u8wdxTIGg" key="documentation" value="let set_of_pin_types : Set(uml::Stereotype) = &#x9;self.base_Pin.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date'),&#xA;&#x9; set_of_param_types : Set(uml::Stereotype) = &#x9;self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;if (self.base_Pin.oclIsKindOf(uml::Pin)) then&#xA;&#x9;set_of_pin_types->size() = 1&#xA;else&#xA;&#x9;if (self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;&#x9;set_of_param_types->size() = 1&#xA;&#x9;else&#xA;&#x9;&#x9;set_of_pin_types->size() = 0 and &#xA;&#x9;&#x9;set_of_param_types->size() = 0&#xA;&#x9;endif&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw5Ik36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw5JE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5Jk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgw5Hk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5J036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5KU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgw5Hk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5Kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5LE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgw5Hk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5LU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5L036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgw5Hk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5ME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5Mk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgw5Hk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5M036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5NU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgw5Hk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5Nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5OE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgw42U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5OU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw5Ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5O036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5PU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgw5Pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw5P036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5QE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw5QU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw5Q036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5RU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgw5Rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw5R036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5SE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw5SU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw5S036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5TU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgw5RU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5Tk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw5T036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5UE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5Uk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgw5RU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5U036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw5VE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5VU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5V036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgw5Hk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5WE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5Wk36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgw5W036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw5XE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5XU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw5Xk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgw5YE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_RgwlEBlhEeOVy4eWE0NqJw/206" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5YU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgw5Zk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5Yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw5Y036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5ZE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5Zk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgw5Z036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw5aE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5aU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw5ak36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5bE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgw5bU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw5bk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5b036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw5cE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgw5fk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw5ck36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw5dE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw5dk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgw5g036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw5eE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw5ek36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw5fE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgw5fk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgw5f036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgw5gE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgw5gU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgw5gk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgw5g036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgw5hE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgw5hU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgw5hk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgw5h036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5iE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgw5iU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw5ik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5i036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw5jE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw5jk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5kE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgw5iE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5kU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw5kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5k036EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5lU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgw5iE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5lk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw5l036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5mE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5mk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgw5m036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw5nE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5nU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw5nk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw5oE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5ok36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgw5mk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5o036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5pU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgw5mk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5qE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgw5mk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5qU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5q036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgw5rE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgw5rU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5rk36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw5r036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw5sU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5s036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgw5q036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5tE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5tk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgw5q036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5t036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5uU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgw5q036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5uk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5vE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgw5q036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5vU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5v036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgw5q036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5wE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5wk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgw5q036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5w036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5xU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgw5Zk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw5xk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw5x036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5yE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5yk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgw5y036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw5zE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5zU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw5zk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw50E36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw50k36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgw50036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw51E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw51U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw51k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw52E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw52k36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgw50k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw52036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw53E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw53U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw53036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgw50k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw54E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw54U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw54k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw55E36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgw5q036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw55U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw55036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgw56E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw56U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw56k36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw56036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgw57U36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_Jqkr8BlhEeOVy4eWE0NqJw/205" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw57k36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgw58036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw57036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw58E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw58U36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw58036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgw59E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw59U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw59k36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw59036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw5-U36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgw5-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw5-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw5_E36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw5_U36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgw6C036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw5_036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw6AU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw6A036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgw6EE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw6BU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6B036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6CU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgw6C036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgw6DE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgw6DU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgw6Dk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgw6D036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgw6EE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgw6EU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgw6Ek36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgw6E036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgw6FE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6FU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgw6Fk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw6F036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6GE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6GU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6G036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6HU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgw6FU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6Hk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw6H036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6IE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6Ik36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgw6FU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6I036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw6JE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6JU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::OutputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6J036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgw6KE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw6KU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6Kk36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6K036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6LU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6L036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgw6J036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6ME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6Mk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgw6J036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6M036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6NU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgw6J036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6Nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6OE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgw6OU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgw6Ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6O036EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6PE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6Pk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6QE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgw6OE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6QU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6Q036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgw6OE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6RE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6Rk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgw6OE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6R036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6SU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgw6OE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6Sk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6TE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgw6OE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6TU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6T036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgw6OE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6UE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6Uk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgw58036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6U036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw6VE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6VU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6V036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgw6WE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw6WU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6Wk36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6W036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw6XU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6X036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgw6YE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw6YU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6Yk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6Y036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6ZU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6Z036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgw6X036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6aE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw6aU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6ak36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6bE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgw6X036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6bU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw6bk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6b036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6cU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgw6OE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6ck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6dE36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgw6dU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw6dk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6d036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6eE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgw6ek36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_yFppEBlgEeOVy4eWE0NqJw/204" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6e036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgw6gE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6fE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw6fU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6fk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6gE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgw6gU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw6gk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6g036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6hE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6hk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgw6h036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw6iE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6iU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw6ik36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgw6mE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw6jE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw6jk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw6kE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgw6nU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw6kk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6lE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6lk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgw6mE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgw6mU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgw6mk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgw6m036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgw6nE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgw6nU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgw6nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgw6n036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgw6oE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgw6oU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6ok36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgw6o036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw6pE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6pU36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6pk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6qE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6qk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgw6ok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw6rE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6rU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::InputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6r036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgw6ok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6sE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw6sU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6sk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::OutputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6tE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgw6tU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw6tk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6t036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6uE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6uk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6vE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgw6tE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6vU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6v036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgw6tE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6wE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6wk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgw6tE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6w036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6xU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgw6xk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgw6x036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6yE36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6yU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw6y036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6zU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgw6xU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw60E36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgw6xU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw60U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw60036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgw6xU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw61E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw61k36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgw6xU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw61036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw62U36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgw6xU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw62k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw63E36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgw6xU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw63U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw63036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgw6gE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw64E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw64U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw64k36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw65E36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgw65U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw65k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw65036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw66E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw66k36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw67E36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgw67U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw67k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw67036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw68E36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw68k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw69E36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgw67E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw69U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw69k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw69036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6-U36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgw67E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw6-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw6_E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw6_k36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgw6xU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw6_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7AU36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgw7Ak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7A036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7BE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7BU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgw7B036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_k3IZUBlgEeOVy4eWE0NqJw/203" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7CE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgw7DU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw7CU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7Ck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7C036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7DU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgw7Dk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7D036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7EE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7EU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7E036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgw7FE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7FU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7Fk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw7F036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgw7JU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw7GU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw7G036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw7HU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgw7Kk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw7H036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7IU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7I036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgw7JU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgw7Jk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgw7J036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgw7KE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgw7KU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgw7Kk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgw7K036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgw7LE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgw7LU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgw7Lk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7L036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgw7ME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7MU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7Mk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7M036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7NU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7N036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgw7L036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw7OE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7OU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7Ok36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::InputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7PE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgw7L036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw7PU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7Pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7P036EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::OutputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7QU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgw7Qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7Q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7RE36EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7RU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7R036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7SU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgw7QU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw7Sk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7TE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgw7QU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw7TU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7T036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgw7QU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw7UE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7Uk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgw7U036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgw7VE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7VU36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7Vk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7WE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7Wk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgw7Uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw7W036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7XU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgw7Uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw7Xk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7YE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgw7Uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw7YU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7Y036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgw7Uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw7ZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7Zk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgw7Uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw7Z036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7aU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgw7Uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw7ak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7bE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgw7DU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw7bU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7bk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7b036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7cU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgw7ck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7c036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7dE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7dU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw7d036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7eU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgw7ek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7e036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7fE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7fU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7f036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7gU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgw7eU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw7gk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7g036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7hE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7hk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgw7eU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw7h036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7iE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7iU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7i036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgw7Uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw7jE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7jk36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgw7j036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7kE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7kU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7kk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgw7lE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_X9lUABlgEeOVy4eWE0NqJw/202" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7lU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgw7mk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw7lk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7l036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7mE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7mk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgw7m036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7nE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7nU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7nk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7oE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgw7oU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7o036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw7pE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgw7sk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw7pk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw7qE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw7qk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgw7t036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgw7rE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7rk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7sE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgw7sk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgw7s036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgw7tE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgw7tU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgw7tk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgw7t036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgw7uE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgw7uU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgw7uk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgw7u036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7vE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgw7vU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7v036EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7wE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7wk36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw7xE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7xk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgw7vE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw7x036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7yE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7yU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::InputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw7y036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgw7vE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw7zE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw7zU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw7zk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::OutputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw70E36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgw70U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgw70k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw70036EeSS5u8wdxTIGg" key="documentation" value="let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#xA;let object_node : uml::ObjectNode = self.base_Pin in&#xA;if (self.base_ActivityParameterNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;object_node = self.base_ActivityParameterNode&#xA;else&#xA;&#x9;true&#xA;endif and&#xA;&#xA;if (not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not object_node.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = object_node.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw71E36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw71k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw72E36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgw70E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw72U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw72036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgw70E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw73E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw73k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgw70E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw73036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw74U36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgw74k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgw74036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgw75E36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw75U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw75036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgw76U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw76036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgw74U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw77E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgw77k36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgw74U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgw77036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxf4U36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgw74U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxf4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxf5E36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgw74U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxf5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxf5036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgw74U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxf6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxf6k36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgw74U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxf6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxf7U36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgw7mk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxf7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxf7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxf8E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxf8k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgxf8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxf9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxf9U36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxf9k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxf-E36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxf-k36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgxf-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxf_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxf_U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxf_k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgAE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgAk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgxf-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxgA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxgBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxgBU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgB036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgxf-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxgCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxgCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxgCk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgDE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgw74U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxgDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgD036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgxgEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxgEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxgEk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgE036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgxgFU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_FoBj4BleEeOVy4eWE0NqJw/201" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgFk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgxgG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxgF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxgGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxgGU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgG036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgxgHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxgHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxgHk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgH036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgIU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgxgIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxgI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxgJE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxgJU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgxgM036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxgJ036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxgKU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxgK036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgxgOE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxgLU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgL036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgMU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgxgM036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgxgNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgxgNU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgxgNk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgxgN036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgxgOE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgxgOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgxgOk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgxgO036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgxgPE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgPU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgxgPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxgP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxgQE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgQU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgQ036EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgRU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgR036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgxgPU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxgSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxgSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxgSk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::InputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgTE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgxgPU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxgTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxgTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxgT036EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::OutputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgUU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgxgUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxgU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxgVE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgVU36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgV036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgWU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgxgUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxgWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgXE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgxgUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxgXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgX036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgxgUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxgYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgYk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgxgY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgxgZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxgZU36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgZk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgaE36EeSS5u8wdxTIGg" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgak36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgbE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgxgYk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxgbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgb036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgxgYk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxgcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgck36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgxgYk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxgc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgdU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgxgYk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxgdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgeE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgxgYk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxgeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxge036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgxgYk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxgfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgfk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgxgG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxgf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxggE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxggU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgg036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgxghE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxghU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxghk36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgh036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxgiU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgi036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgxgjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxgjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxgjk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgj036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgkU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgk036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgxgi036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxglE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxglU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxglk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgmE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgxgi036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxgmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxgmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxgm036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgnU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgxgYk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxgnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgoE36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgxgoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxgok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxgo036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgpE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgxgpk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_T_OHQBYOEeOO18EfFkykTQ/200" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgp036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgxgrE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxgqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxgqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxgqk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgrE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgxgrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxgrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxgr036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgsE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgsk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgxgs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxgtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxgtU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxgtk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgxgxE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxguE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxguk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxgvE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgxgyU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxgvk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgwE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxgwk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgxgxE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgxgxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgxgxk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgxgx036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgxgyE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgxgyU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgxgyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgxgy036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgxgzE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgxgzU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxgzk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgxgz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxg0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxg0U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxg0k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxg1E36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgxgzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxg1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxg1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxg1036EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::InputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxg2U36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgxgzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxg2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxg2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxg3E36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::OutputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxg3k36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgxg3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxg4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxg4U36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxg4k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxg5E36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgxg3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxg5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxg5036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgxg3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxg6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxg6k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgxg3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxg6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxg7U36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgxg7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgxg7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxg8E36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxg8U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxg8036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgxg7U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxg9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxg9k36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgxg7U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxg9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxg-U36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgxg7U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxg-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxg_E36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgxg7U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxg_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxg_036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgxg7U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhAk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgxg7U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhBU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgxgrE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhCE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhCk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgxhC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhDU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxhDk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxhEE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhEk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgxhE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhFU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxhFk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxhGE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhGk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgxhEk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhHU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhH036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgxhEk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhIk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhJE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgxg7U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhJ036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgxhKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhKk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxhK036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgxhLU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_tal1wBYLEeOO18EfFkykTQ/199" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhLk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgxhM036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhMU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhM036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgxhNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhNk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxhN036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhOU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgxhOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhPE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxhPU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgxhS036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxhP036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxhQU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxhQ036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgxhUE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxhRU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxhR036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxhSU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgxhS036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgxhTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgxhTU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgxhTk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgxhT036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgxhUE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgxhUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgxhUk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgxhU036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgxhVE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhVU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgxhVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhWE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxhWU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhW036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgxhVU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhXk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::InputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhYE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgxhVU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhY036EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::OutputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhZU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgxhZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhaE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxhaU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxha036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgxhZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhbk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgxhZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhcU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgxhZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhdE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgxhdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgxhdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhd036EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxheE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhek36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgxhdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhfU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgxhdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhgE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgxhdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhg036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgxhdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhhk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgxhdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhiU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgxhdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhjE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgxhM036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhj036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhkU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgxhkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhlE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxhlU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxhl036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhmU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgxhmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhnE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxhnU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxhn036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhoU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgxhmU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxho036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhpE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhpk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgxhmU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhqU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhq036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgxhdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhrk36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgxhr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhsU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxhsk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgxhtE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_DA5aoBVuEeOn26SfTPTaEA/198" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhtU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgxhuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxhtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxht036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhuE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhuk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgxhu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhvU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxhvk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxhwE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgxhwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxhwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxhw036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxhxE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgxh0k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxhxk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxhyE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxhyk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgxh1036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxhzE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxhzk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxh0E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgxh0k36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgxh0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgxh1E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgxh1U36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgxh1k36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgxh1036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgxh2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgxh2U36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgxh2k36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgxh2036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxh3E36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgxh3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxh3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxh3036EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxh4E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxh4k36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgxh3E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxh4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxh5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxh5U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::InputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxh5036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgxh3E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxh6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxh6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxh6k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::OutputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxh7E36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgxh7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxh7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxh7036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxh8E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxh8k36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgxh7E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxh8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxh9U36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgxh7E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxh9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxh-E36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgxh7E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxh-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxh-036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgxh_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgxh_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxh_k36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxh_036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiAU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgxh-036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxiAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiBE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgxh-036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxiBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiB036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgxh-036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxiCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiCk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgxh-036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxiC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiDU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgxh-036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxiDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiEE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgxh-036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxiEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiE036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgxhuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxiFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxiFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxiFk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiGE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgxiGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxiGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxiG036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxiHE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxiHk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiIE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgxiIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxiIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxiI036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxiJE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxiJk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiKE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgxiIE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxiKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxiKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxiK036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiLU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgxiIE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxiLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxiL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxiME36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiMk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgxh-036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxiM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiNU36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgxiNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxiN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxiOE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxiOU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgxiO036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_x_2jMBVnEeOn26SfTPTaEA/197" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiPE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgxiQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxiPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxiPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxiP036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiQU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgxiQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxiQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxiRE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxiRU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiR036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgxiSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxiSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxiSk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxiS036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgxiWU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxiTU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxiT036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxiUU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgxiXk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxiU036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxiVU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxiV036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgxiWU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgxiWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgxiW036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgxiXE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgxiXU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgxiXk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgxiX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgxiYE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgxiYU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgxiYk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiY036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgxiZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxiZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxiZk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxiZ036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiaU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgxiY036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxiak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxia036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxibE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::InputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxibk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgxiY036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxib036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxicE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxicU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::OutputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxic036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgxidE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxidU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxidk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxid036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxieU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgxic036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxiek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxifE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgxic036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxifU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxif036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgxic036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxigE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxigk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgxig036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgxihE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxihU36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxihk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiiE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgxigk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxiiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxii036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgxigk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxijE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxijk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgxigk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxij036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxikU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgxigk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxikk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxilE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgxigk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxilU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxil036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgxigk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgximE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgximk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgxiQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxim036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxinE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxinU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxin036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgxioE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxioU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxiok36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxio036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxipU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxip036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgxiqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxiqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxiqk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxiq036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxirU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxir036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgxip036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxisE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxisU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxisk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxitE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgxip036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxitU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxitk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxit036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiuU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgxigk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxiuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxivE36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgxivU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxivk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxiv036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxiwE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgxiwk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_vHM7EBVnEeOn26SfTPTaEA/196" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiw036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgxiyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxixE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxixU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxixk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxiyE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgxiyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxiyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxiy036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxizE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxizk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgxiz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxi0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxi0U36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxi0k36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgxi4E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxi1E36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxi1k36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxi2E36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgxi5U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgxi2k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxi3E36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxi3k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgxi4E36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgxi4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgxi4k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgxi4036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgxi5E36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgxi5U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgxi5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgxi5036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgxi6E36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgxi6U36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxi6k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgxi6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxi7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxi7U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxi7k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxi8E36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgxi6k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxi8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxi8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxi8036EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::InputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxi9U36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgxi6k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgxi9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxi9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxi-E36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::OutputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgxi-k36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgxi-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgxi_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgxi_U36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgxi_k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyG8E36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgxi-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyG8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyG8036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgxi-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyG9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyG9k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgxi-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyG9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyG-U36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgyG-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgyG-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyG_E36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyG_U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyG_036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgyG-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHAk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgyG-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHBU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgyG-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHCE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgyG-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHC036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgyG-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHDk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgyG-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHEU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgxiyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHFE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHFk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgyHF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHGU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyHGk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyHHE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHHk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgyHH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHIU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyHIk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyHJE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHJk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgyHHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHKU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHK036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgyHHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHLk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHME36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgyG-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHM036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgyHNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHNk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyHN036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgyHOU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_ZXtIwBVnEeOn26SfTPTaEA/195" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHOk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgyHP036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHPU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHP036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgyHQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHQk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyHQ036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHRU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgyHRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHSE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyHSU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgyHV036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyHS036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyHTU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyHT036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgyHXE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyHUU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyHU036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyHVU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyHV036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgyHWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyHWU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyHWk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgyHW036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyHXE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgyHXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyHXk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyHX036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgyHYE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHYU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgyHYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHZE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyHZU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHZ036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgyHYU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHak36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::in&#xA;&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::InputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHbE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgyHYU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHb036EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::OutputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHcU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgyHck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHdE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyHdU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHd036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgyHcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHek36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgyHcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHfU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgyHcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHgE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgyHgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgyHgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHg036EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyHhE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHhk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgyHgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHiU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgyHgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHjE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgyHgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHj036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgyHgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHkk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgyHgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHlU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgyHgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHmE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgyHP036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHm036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHnU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgyHnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHoE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyHoU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyHo036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHpU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgyHpk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHqE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyHqU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyHq036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHrU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgyHpU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHsE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHsk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgyHpU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHtU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHt036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgyHgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHuk36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgyHu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHvU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyHvk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgyHwE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_Jamy4BVnEeOn26SfTPTaEA/194" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHwU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgyHxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyHwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHxE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHxk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgyHx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHyU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyHyk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyHzE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgyHzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyHzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyHz036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyH0E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgyH3k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyH0k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyH1E36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyH1k36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgyH4036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyH2E36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyH2k36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyH3E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyH3k36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgyH3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyH4E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyH4U36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgyH4k36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyH4036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgyH5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyH5U36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyH5k36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgyH5036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyH6E36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgyH6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyH6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyH6036EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyH7E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyH7k36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgyH6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyH7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyH8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyH8U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::in&#xA;&#x9;&#xA;self.base_ObjectNode.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_ObjectNode.oclIsTypeOf(uml::InputPin)&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyH8036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgyH6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyH9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyH9k36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgyH9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyH-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyH-U36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyH-k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyH_E36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgyH9k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyH_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyH_036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgyH9k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIAk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgyH9k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIBU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgyIBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgyIB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyICE36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyICU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIC036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgyIBU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIDk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgyIBU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyID036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIEU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgyIBU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIFE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgyIBU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIF036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgyIBU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIGk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgyIBU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIHU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgyHxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyIH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyIIE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIIk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgyII036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyIJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyIJU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyIJk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyIKE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIKk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgyIK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyILE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyILU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyILk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyIME36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIMk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgyIKk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyINE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyINU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIN036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgyIKk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyIOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyIOk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIPE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgyIBU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIP036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgyIQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyIQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyIQk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyIQ036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgyIRU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_rLB14BVmEeOn26SfTPTaEA/193" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIRk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgyIS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyISE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyISU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIS036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgyITE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyITU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyITk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyIT036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIUU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgyIUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyIU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyIVE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyIVU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgyIY036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyIV036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyIWU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyIW036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgyIaE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyIXU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyIX036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyIYU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyIY036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgyIZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyIZU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyIZk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgyIZ036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyIaE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgyIaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyIak36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyIa036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgyIbE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIbU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgyIbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyIb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyIcE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyIcU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIc036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgyIbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyIdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyIdk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::in&#xA;&#x9;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIeE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgyIbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIe036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgyIfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyIfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyIfk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyIf036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIgU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgyIe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIhE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgyIe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIh036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgyIe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIik36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgyIi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgyIjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyIjU36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyIjk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIkE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgyIik36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIk036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgyIik36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIlk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgyIik36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyImU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgyIik36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyImk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyInE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgyIik36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyInU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIn036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgyIik36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIok36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgyIS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyIpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyIpU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIp036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgyIqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyIqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyIqk36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyIq036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyIrU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIr036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgyIsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyIsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyIsk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyIs036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyItU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIt036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgyIr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyIuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyIuk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIvE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgyIr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyIvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyIv036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIwU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgyIik36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIxE36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgyIxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyIxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyIx036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyIyE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgyIyk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_icf_gBVmEeOn26SfTPTaEA/192" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyIy036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgyI0E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyIzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyIzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyIzk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyI0E36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgyI0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyI0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyI0036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyI1E36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyI1k36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgyI1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyI2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyI2U36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyI2k36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgyI6E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyI3E36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyI3k36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyI4E36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgyI7U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyI4k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyI5E36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyI5k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyI6E36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgyI6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyI6k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyI6036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgyI7E36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyI7U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgyI7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyI7036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyI8E36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgyI8U36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyI8k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgyI8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyI9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyI9U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyI9k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyI-E36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgyI8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyI-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyI-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyI-036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::in&#xA;else&#xA;&#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyI_U36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgyI8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyI_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJAE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgyJAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJA036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJBE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJBk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgyJAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJCU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgyJAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJDE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgyJAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJD036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgyJEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgyJEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJEk36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJE036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJFU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgyJD036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJGE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgyJD036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJG036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgyJD036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJHk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgyJD036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJIU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgyJD036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJJE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgyJD036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJJ036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgyI0E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJKk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJLE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgyJLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJL036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJME36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyJMk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJNE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgyJNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJN036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJOE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJOk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJPE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgyJNE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJP036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJQU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgyJNE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJRE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJRk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgyJD036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJSU36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgyJSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJTE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJTU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgyJT036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_sLthsBVkEeOn26SfTPTaEA/191" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJUE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgyJVU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJU036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJVU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgyJVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJWE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJWU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJW036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgyJXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJXk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyJX036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgyJbU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyJYU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyJY036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyJZU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgyJck36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyJZ036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJaU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJa036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyJbU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgyJbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyJb036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyJcE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgyJcU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyJck36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgyJc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyJdE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyJdU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgyJdk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJd036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgyJeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJek36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJe036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJfU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgyJd036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJgE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgyJd036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJg036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgyJhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJhk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJh036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJiU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgyJg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJjE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgyJg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJj036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgyJg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJkk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgyJk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgyJlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJlU36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJlk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJmE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgyJkk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJm036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgyJkk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJnE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJnk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgyJkk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJoU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgyJkk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJpE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgyJkk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJp036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgyJkk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJqk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgyJVU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJrU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJr036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgyJsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJsk36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJs036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyJtU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJt036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgyJuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJuk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJu036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJvU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJv036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgyJt036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJwk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJxE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgyJt036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJx036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJyU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgyJkk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJzE36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgyJzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJz036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;&#xA;uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJ0E36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgyJ0k36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_lcjtoBVaEeOn26SfTPTaEA/190" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJ0036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgyJ2E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyJ1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJ1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJ1k36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJ2E36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgyJ2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJ2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJ2036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJ3E36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJ3k36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgyJ3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJ4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJ4U36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyJ4k36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgyJ8E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyJ5E36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyJ5k36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyJ6E36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgyJ9U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyJ6k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJ7E36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJ7k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyJ8E36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgyJ8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyJ8k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyJ8036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgyJ9E36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyJ9U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgyJ9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyJ9036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyJ-E36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgyJ-U36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyJ-k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgyJ-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyJ_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyJ_U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyJ_k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyKAE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgyJ-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyKAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyKA036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgyJ-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyKBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyKBk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgyKB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyKCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyKCU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyKCk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyKDE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgyKBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyKDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyKD036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgyKBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyKEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyKEk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgyKBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyKE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyKFU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgyKFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgyKF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyKGE36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyKGU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyKG036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgyKFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyKHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyKHk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgyKFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyKH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyKIU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgyKFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyKIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyKJE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgyKFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyKJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyKJ036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgyKFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyKKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuAE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgyKFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyuAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuA036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgyJ2E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyuBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyuBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyuBk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuCE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgyuCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyuCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyuC036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyuDE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyuDk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuEE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgyuEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyuEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyuE036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyuFE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyuFk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuGE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgyuEE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyuGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyuGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyuG036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuHU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgyuEE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyuHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyuH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyuIE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuIk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgyKFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyuI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuJU36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgyuJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyuJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyuKE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0 and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyuKU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgyuK036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_jdOTIBVaEeOn26SfTPTaEA/189" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuLE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgyuMU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyuLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyuLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyuL036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuMU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgyuMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyuM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyuNE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyuNU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuN036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgyuOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyuOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyuOk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyuO036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgyuSU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyuPU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyuP036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyuQU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgyuTk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyuQ036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyuRU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyuR036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyuSU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgyuSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyuS036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyuTE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgyuTU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyuTk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgyuT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyuUE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyuUU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgyuUk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuU036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgyuVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyuVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyuVk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyuV036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuWU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgyuU036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyuWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuXE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgyuU036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyuXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuX036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgyuYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyuYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyuYk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyuY036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuZU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgyuX036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyuZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuaE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgyuX036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyuaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyua036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgyuX036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyubE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyubk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgyub036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgyucE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyucU36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyuck36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyudE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgyubk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyudU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyud036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgyubk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyueE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuek36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgyubk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyue036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyufU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgyubk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyufk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyugE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgyubk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyugU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyug036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgyubk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyuhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuhk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgyuMU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyuh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyuiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyuiU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyui036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgyujE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyujU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyujk36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyuj036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyukU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuk036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgyulE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyulU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyulk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyul036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyumU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyum036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgyuk036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyunE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyunU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyunk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuoE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgyuk036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyuoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyuok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyuo036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyupU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgyubk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyupk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuqE36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgyuqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyuqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyuq036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0 and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyurE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgyurk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_ieFxYBVaEeOn26SfTPTaEA/188" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyur036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgyutE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyusE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyusU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyusk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyutE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgyutU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyutk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyut036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyuuE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyuuk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgyuu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyuvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyuvU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyuvk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgyuzE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyuwE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyuwk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyuxE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgyu0U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyuxk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyuyE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyuyk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyuzE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgyuzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyuzk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyuz036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgyu0E36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyu0U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgyu0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyu0036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyu1E36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgyu1U36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyu1k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgyu1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyu2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyu2U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyu2k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyu3E36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgyu1k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyu3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyu3036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgyu1k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyu4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyu4k36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgyu4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyu5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyu5U36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyu5k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyu6E36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgyu4k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyu6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyu6036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgyu4k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyu7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyu7k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgyu4k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyu7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyu8U36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgyu8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgyu8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyu9E36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyu9U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyu9036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgyu8U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyu-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyu-k36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgyu8U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyu-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyu_U36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgyu8U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyu_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvAE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgyu8U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvA036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgyu8U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvBk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgyu8U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvCU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgyutE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvDE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvDk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgyvD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvEU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyvEk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyvFE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvFk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgyvF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvGU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyvGk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyvHE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvHk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgyvFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvIU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvI036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgyvFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvJk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvKE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgyu8U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvK036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgyvLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvLk36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0 and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyvL036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgyvMU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_UOGdkBVaEeOn26SfTPTaEA/187" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvMk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgyvN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvNU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvN036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgyvOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvOk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyvO036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvPU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgyvPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvQE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyvQU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgyvT036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyvQ036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyvRU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyvR036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgyvVE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyvSU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyvS036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyvTU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyvT036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgyvUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyvUU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyvUk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgyvU036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyvVE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgyvVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyvVk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyvV036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgyvWE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvWU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgyvWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvXE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyvXU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvX036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgyvWU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvYk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgyvWU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvZU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgyvZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvaE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyvaU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyva036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgyvZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvbk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgyvZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvcU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgyvZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvdE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgyvdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgyvdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvd036EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyveE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvek36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgyvdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyve036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvfU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgyvdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvgE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgyvdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvg036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgyvdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvhk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgyvdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyviU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgyvdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvjE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgyvN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvj036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvkU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgyvkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvlE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyvlU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyvl036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvmU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgyvmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvnE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyvnU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyvn036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvoU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgyvmU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvpE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvpk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgyvmU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvqU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvq036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgyvdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvrk36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgyvr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvsU36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;&#xA;uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0 and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyvsk36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgyvtE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_P_LbgBVZEeOn26SfTPTaEA/186" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvtU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgyvuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyvtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvuE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvuk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgyvu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvvU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyvvk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyvwE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgyvwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyvwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyvw036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyvxE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgyv0k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyvxk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyvyE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyvyk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgyv1036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyvzE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyvzk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyv0E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyv0k36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgyv0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyv1E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyv1U36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgyv1k36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyv1036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgyv2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyv2U36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyv2k36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgyv2036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyv3E36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgyv3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyv3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyv3036EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyv4E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyv4k36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgyv3E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyv4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyv5U36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgyv3E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyv5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyv6E36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgyv6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyv6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyv6036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyv7E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyv7k36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgyv6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyv7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyv8U36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgyv6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyv8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyv9E36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgyv6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyv9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyv9036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgyv-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgyv-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyv-k36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyv-036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyv_U36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgyv9036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyv_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywAE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgyv9036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywA036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgyv9036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywBk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgyv9036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywCU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgyv9036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywDE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgyv9036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywD036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgyvuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywEk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywFE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgywFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywF036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgywGE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgywGk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywHE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgywHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywH036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgywIE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgywIk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywJE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgywHE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywJ036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywKU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgywHE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywLE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywLk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgyv9036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywMU36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgywMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywNE36EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;&#xA;uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgywNU36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgywN036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_3IDJ4BVYEeOn26SfTPTaEA/185" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywOE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgywPU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywO036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywPU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgywPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywQE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgywQU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywQ036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgywRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywRk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgywR036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgywVU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgywSU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgywS036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgywTU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgywWk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgywT036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgywUU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgywU036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgywVU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgywVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgywV036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgywWE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgywWU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgywWk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgywW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgywXE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgywXU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgywXk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywX036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgywYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywYk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgywY036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywZU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgywX036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywaE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgywX036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywa036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgywbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywbk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgywb036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywcU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgywa036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywdE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgywa036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywd036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgywa036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyweE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywek36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgywe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgywfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywfU36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgywfk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywgE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgywek36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywg036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgywek36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywhk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgywek36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywiU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgywek36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywjE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgywek36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywj036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgywek36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywkk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgywPU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywlU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywl036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgywmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywmk36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgywm036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgywnU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywn036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgywoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywok36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgywo036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgywpU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywp036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgywn036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywqk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywrE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgywn036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywr036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywsU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgywek36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywtE36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgywtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywt036EeSS5u8wdxTIGg" key="documentation" value="uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::StructuredActivityNode.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgywuE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgywuk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_HtrPcBVFEeOn26SfTPTaEA/184" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywu036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgywwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgywvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywvk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywwE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgywwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyww036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgywxE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgywxk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgywx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgywyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgywyU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgywyk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgyw2E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgywzE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgywzk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyw0E36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgyw3U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyw0k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyw1E36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyw1k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyw2E36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgyw2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyw2k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyw2036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgyw3E36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgyw3U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgyw3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgyw3036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgyw4E36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgyw4U36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyw4k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgyw4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyw5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyw5U36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyw5k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyw6E36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgyw4k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyw6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyw6036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgyw4k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyw7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyw7k36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgyw7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyw8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyw8U36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyw8k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyw9E36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgyw7k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyw9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyw9036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgyw7k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyw-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyw-k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgyw7k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyw-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyw_U36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgyw_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgyw_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyxAE36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyxAU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyxA036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgyw_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyxBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyxBk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgyw_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyxB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyxCU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgyw_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyxCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyxDE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgyw_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyxDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyxD036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgyw_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyxEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyxEk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgyw_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyxE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyxFU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgywwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyxFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyxF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyxGE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyxGk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgyxG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyxHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyxHU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyxHk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgyxIE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyxIk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgyxI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyxJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyxJU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyxJk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyxKE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyxKk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgyxIk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyxK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyxLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyxLU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyxL036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgyxIk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyxME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyxMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyxMk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyxNE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgyw_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgyxNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgyxN036EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgyxOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgyxOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgyxOk36EeSS5u8wdxTIGg" key="documentation" value="true&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgyxO036EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgzVEU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_u31XQBVEEeOn26SfTPTaEA/183" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVEk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgzVF036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzVFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzVFU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVF036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgzVGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzVGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzVGk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzVG036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVHU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgzVHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzVH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzVIE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzVIU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgzVL036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzVI036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzVJU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzVJ036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgzVNE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzVKU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzVK036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzVLU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgzVL036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgzVME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgzVMU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgzVMk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgzVM036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgzVNE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgzVNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgzVNk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgzVN036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgzVOE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVOU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgzVOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzVO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzVPE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzVPU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVP036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgzVOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVQk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgzVOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVRU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgzVRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzVR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzVSE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzVSU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVS036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgzVRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVTk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgzVRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVUU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgzVRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVVE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgzVVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgzVVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzVV036EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzVWE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVWk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgzVVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVXU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgzVVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVYE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgzVVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVY036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgzVVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVZk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgzVVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVaU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgzVVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVbE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgzVF036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzVbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzVb036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVcU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgzVck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzVc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzVdE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzVdU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzVd036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVeU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgzVek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzVe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzVfE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzVfU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzVf036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVgU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgzVeU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzVg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzVhE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVhk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgzVeU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzViE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzViU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVi036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgzVVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVjk36EeSS5u8wdxTIGg" name="CTIEProfile">
          <eAnnotations xmi:id="_xgzVj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHelE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzVkE36EeSS5u8wdxTIGg" name="base_Activity" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgzVkk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_bB9hoBSXEeOdysCqTthRng/182" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVk036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgzVmE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzVlU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzVlk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVmE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgzVmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzVmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzVm036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzVnE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVnk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgzVn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzVoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzVoU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzVok36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgzVsE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzVpE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzVpk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzVqE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgzVtU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzVqk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzVrE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzVrk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgzVsE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgzVsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgzVsk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgzVs036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgzVtE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgzVtU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgzVtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgzVt036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgzVuE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgzVuU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVuk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgzVu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzVvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzVvU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzVvk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVwE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgzVuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVw036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgzVuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVxk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgzVx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzVyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzVyU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzVyk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVzE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgzVxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzVzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzVz036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgzVxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzV0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzV0k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgzVxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzV0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzV1U36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgzV1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgzV1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzV2E36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzV2U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzV2036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgzV1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzV3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzV3k36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgzV1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzV3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzV4U36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgzV1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzV4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzV5E36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgzV1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzV5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzV5036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgzV1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzV6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzV6k36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgzV1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzV6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzV7U36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgzVmE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzV7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzV7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzV8E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzV8k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgzV8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzV9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzV9U36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzV9k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzV-E36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzV-k36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgzV-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzV_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzV_U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzV_k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzWAE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWAk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgzV-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzWBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzWBU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWB036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgzV-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzWCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzWCk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWDE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgzV1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgzWD036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_ntqlABPjEeOgy5f_ml0RHg/181" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWEE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgzWFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzWEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzWE036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWFU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgzWFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzWF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzWGE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzWGU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWG036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgzWHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzWHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzWHk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzWH036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgzWLU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzWIU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzWI036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzWJU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgzWMk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzWJ036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzWKU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzWK036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgzWLU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgzWLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgzWL036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgzWME36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgzWMU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgzWMk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgzWM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgzWNE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgzWNU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgzWNk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWN036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgzWOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzWOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzWOk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty() &#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzWO036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWPU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgzWN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWQE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgzWN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWQ036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgzWRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzWRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzWRk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzWR036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWSU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgzWQ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWTE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgzWQ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWT036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgzWQ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWUk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgzWU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgzWVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzWVU36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzWVk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWWE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgzWUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWW036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgzWUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWXk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgzWUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWYU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgzWUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWZE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgzWUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWZ036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgzWUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWak36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgzWFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzWbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzWbU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWb036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgzWcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzWcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzWck36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzWc036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzWdU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWd036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgzWeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzWeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzWek36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzWe036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzWfU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWf036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgzWd036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWgE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzWgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzWgk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWhE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgzWd036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzWhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzWh036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWiU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgzWUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgzWjE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_4f3zYBPiEeOgy5f_ml0RHg/180" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWjU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgzWkk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzWj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzWkE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWkk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgzWk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzWlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzWlU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzWlk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWmE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgzWmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzWmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzWm036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzWnE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgzWqk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzWnk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzWoE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzWok36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgzWr036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzWpE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzWpk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzWqE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgzWqk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgzWq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgzWrE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgzWrU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgzWrk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgzWr036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgzWsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgzWsU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgzWsk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgzWs036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWtE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgzWtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzWtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzWt036EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzWuE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWuk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgzWtE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWvU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgzWtE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWwE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgzWwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzWwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzWw036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzWxE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWxk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgzWwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWyU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgzWwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWzE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgzWwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzWzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzWz036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgzW0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgzW0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzW0k36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzW0036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzW1U36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgzWz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzW1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzW2E36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgzWz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzW2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzW2036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgzWz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzW3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzW3k36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgzWz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzW3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzW4U36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgzWz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzW4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzW5E36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgzWz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzW5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzW5036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgzWkk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzW6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzW6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzW6k36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzW7E36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgzW7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzW7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzW7036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzW8E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzW8k36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzW9E36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgzW9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzW9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzW9036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzW-E36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzW-k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzW_E36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgzW9E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzW_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzW_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzW_036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXAU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgzW9E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzXA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzXBE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXBk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgzWz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgzXCU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_C8YD8BPiEeOgy5f_ml0RHg/179" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXCk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgzXD036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzXDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzXDU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXD036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgzXEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzXEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzXEk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzXE036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXFU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgzXFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzXF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzXGE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzXGU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgzXJ036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzXG036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzXHU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzXH036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgzXLE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzXIU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzXI036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzXJU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgzXJ036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgzXKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgzXKU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgzXKk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgzXK036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgzXLE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgzXLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgzXLk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgzXL036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgzXME36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXMU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgzXMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzXM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzXNE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzXNU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXN036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgzXMU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXOk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgzXMU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXPU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgzXPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzXP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzXQE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzXQU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXQ036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgzXPU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXRk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgzXPU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXSU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgzXPU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXTE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgzXTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgzXTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzXT036EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzXUE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXUk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgzXTE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXVU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgzXTE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXWE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgzXTE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXW036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgzXTE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXXk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgzXTE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXYU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgzXTE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXZE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgzXD036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzXZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzXZ036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXaU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgzXak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzXa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzXbE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzXbU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzXb036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXcU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgzXck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzXc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzXdE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzXdU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzXd036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXeU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgzXcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzXe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzXfE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXfk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgzXcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzXgE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzXgU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXg036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgzXTE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgzXhk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_c6tqsBPhEeOy6eRlOY0JBA/178" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXh036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgzXjE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzXiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzXik36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXjE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgzXjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzXjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzXj036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzXkE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXkk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgzXk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzXlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzXlU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzXlk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgzXpE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzXmE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzXmk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzXnE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgzXqU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzXnk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzXoE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzXok36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgzXpE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgzXpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgzXpk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgzXp036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgzXqE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgzXqU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgzXqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgzXq036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgzXrE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgzXrU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXrk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgzXr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzXsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzXsU36EeSS5u8wdxTIGg" key="documentation" value="not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzXsk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXtE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgzXrk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXt036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgzXrk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXuk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgzXu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzXvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzXvU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzXvk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXwE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgzXuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXw036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgzXuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXxk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgzXuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzXx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXyU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgzXyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgzXy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzXzE36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzXzU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzXz036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgzXyU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzX0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzX0k36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgzXyU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzX0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzX1U36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgzXyU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzX1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzX2E36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgzXyU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzX2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzX2036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgzXyU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzX3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzX3k36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgzXyU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzX3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzX4U36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgzXjE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzX4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzX4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzX5E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzX5k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgzX5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzX6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzX6U36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzX6k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzX7E36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzX7k36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgzX7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzX8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzX8U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzX8k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzX9E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzX9k36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgzX7k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzX9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzX-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzX-U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzX-036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgzX7k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzX_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzX_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzX_k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzYAE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgzXyU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzYAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgzYA036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_RGX58BPhEeOy6eRlOY0JBA/177" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzYBE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgzYCU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzYBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzYBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzYB036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzYCU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgzYCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzYC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzYDE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzYDU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzYD036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgzYEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzYEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzYEk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzYE036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgzYIU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzYFU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzYF036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzYGU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgzYJk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgzYG036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzYHU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzYH036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgzYIU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgzYIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgzYI036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgzYJE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgzYJU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgzYJk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgzYJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgzYKE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgzYKU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgzYKk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzYK036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgzYLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzYLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzYLk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor &#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined() &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzYL036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzYMU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgzYK036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzYMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzYNE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgzYK036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzYNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzYN036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgzYOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgzYOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgzYOk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgzYO036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzYPU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgzYN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzYPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgzYQE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgzYN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgzYQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8IE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgzYN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8IU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8I036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgz8JE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgz8JU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz8Jk36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz8J036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8KU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgz8I036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8Kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8LE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgz8I036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8LU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8L036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgz8I036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8ME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8Mk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgz8I036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8M036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8NU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgz8I036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8Nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8OE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgz8I036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8OU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8O036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgzYCU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8PE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz8PU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz8Pk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8QE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgz8QU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz8Qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz8Q036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz8RE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz8Rk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8SE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgz8SU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz8Sk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz8S036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz8TE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz8Tk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8UE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgz8SE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8UU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz8Uk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz8U036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8VU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgz8SE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8Vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz8V036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz8WE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8Wk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgz8I036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8W036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgz8XU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_8Yn4gBPgEeOy6eRlOY0JBA/176" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8Xk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgz8Y036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8X036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz8YE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz8YU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8Y036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgz8ZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz8ZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz8Zk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz8Z036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8aU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgz8ak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz8a036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz8bE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz8bU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgz8e036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz8b036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz8cU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz8c036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgz8gE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz8dU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz8d036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz8eU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgz8e036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgz8fE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgz8fU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgz8fk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgz8f036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgz8gE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgz8gU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgz8gk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgz8g036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgz8hE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8hU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgz8hk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz8h036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8iU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgz8hU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8ik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8jE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgz8hU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8jU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8j036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgz8kE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz8kU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz8kk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz8k036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8lU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgz8j036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8lk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8mE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgz8j036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8mU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8m036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgz8j036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8nE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8nk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgz8n036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgz8oE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz8oU36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz8ok36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8pE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgz8nk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8pU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8p036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgz8nk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8qE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8qk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgz8nk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8rU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgz8nk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8sE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgz8nk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8sU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8s036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgz8nk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8tE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8tk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgz8Y036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8t036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz8uE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz8uU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8u036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgz8vE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz8vU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz8vk36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz8v036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz8wU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8w036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgz8xE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz8xU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz8xk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz8x036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz8yU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz8y036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgz8w036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz8zE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz8zU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz8zk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz80E36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgz8w036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz80U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz80k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz80036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz81U36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgz8nk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz81k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgz82E36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_rXNl8BPgEeOy6eRlOY0JBA/175" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz82U36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgz83k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz82k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz82036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz83E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz83k36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgz83036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz84E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz84U36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz84k36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz85E36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgz85U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz85k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz85036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz86E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgz89k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz86k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz87E36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz87k36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgz8-036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz88E36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz88k36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz89E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgz89k36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgz89036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgz8-E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgz8-U36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgz8-k36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgz8-036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgz8_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgz8_U36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgz8_k36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgz8_036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9AE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgz9AU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz9Ak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9A036EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty() xor &#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out')->notEmpty()&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz9BE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9Bk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgz9AE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9B036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9CU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgz9AE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9Ck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9DE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgz9DU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz9Dk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9D036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz9EE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9Ek36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgz9DE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9E036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9FU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgz9DE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9Fk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9GE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgz9DE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9GU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9G036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgz9HE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgz9HU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9Hk36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz9H036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9IU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgz9G036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9Ik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9JE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgz9G036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9JU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9J036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgz9G036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9KE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9Kk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgz9G036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9K036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9LU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgz9G036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9Lk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9ME36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgz9G036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9MU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9M036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgz83k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9NE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz9NU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9Nk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9OE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgz9OU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz9Ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9O036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz9PE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz9Pk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9QE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgz9QU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz9Qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9Q036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz9RE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz9Rk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9SE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgz9QE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9SU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz9Sk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9S036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9TU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgz9QE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9Tk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz9T036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9UE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9Uk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgz9G036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9U036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgz9VU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_SRNK0BPgEeOy6eRlOY0JBA/174" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9Vk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgz9W036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9V036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz9WE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9WU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9W036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgz9XE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz9XU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9Xk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz9X036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9YU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgz9Yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz9Y036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9ZE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz9ZU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgz9c036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz9Z036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz9aU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz9a036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgz9eE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz9bU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz9b036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz9cU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgz9c036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgz9dE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgz9dU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgz9dk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgz9d036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgz9eE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgz9eU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgz9ek36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgz9e036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgz9fE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9fU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgz9fk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz9f036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9gE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsTypeOf(uml::InputPin)) then&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;if (self.base_ObjectNode.oclIsTypeOf(uml::OutputPin)) then&#xA;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined() and&#xA;&#x9;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() &#xA;else&#xA;&#x9;if (self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor&#xA;&#x9;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;&#x9;else&#xA;&#x9;&#x9;false&#xA;&#x9;endif&#xA;&#xA;endif&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz9gU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9g036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgz9fU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9hE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9hk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgz9fU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9h036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9iU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgz9ik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz9i036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9jE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz9jU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9j036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgz9iU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9kE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9kk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgz9iU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9k036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9lU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgz9iU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9lk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9mE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgz9mU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgz9mk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9m036EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz9nE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9nk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgz9mE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9n036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9oU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgz9mE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9pE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgz9mE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9pU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9p036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgz9mE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9qE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9qk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgz9mE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9rU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgz9mE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9sE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgz9W036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9sU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz9sk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9s036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9tU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgz9tk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz9t036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9uE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz9uU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz9u036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9vU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgz9vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz9v036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9wE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz9wU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz9w036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9xU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgz9vU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9xk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz9x036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9yE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9yk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgz9vU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz9y036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz9zE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9zU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9z036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgz9mE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz90E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgz90k36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_YC0ZkBPfEeOy6eRlOY0JBA/173" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz90036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xgz92E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz91E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz91U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz91k36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz92E36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xgz92U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz92k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz92036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz93E36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz93k36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xgz93036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz94E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz94U36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz94k36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xgz98E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz95E36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz95k36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz96E36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xgz99U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz96k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz97E36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz97k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgz98E36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xgz98U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgz98k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgz98036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xgz99E36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xgz99U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xgz99k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xgz99036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xgz9-E36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xgz9-U36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz9-k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xgz9-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz9_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz9_U36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin)) then&#xA;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined()&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotypes()->select(st|st.name = 'in' or st.name = 'out')->size()=1&#xA;else&#xA;&#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz9_k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-AE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xgz9-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz-AU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-A036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xgz9-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz-BE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-Bk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xgz-B036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz-CE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz-CU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz-Ck36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-DE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xgz-Bk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz-DU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-D036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xgz-Bk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz-EE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-Ek36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xgz-Bk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz-E036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-FU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xgz-Fk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xgz-F036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz-GE36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz-GU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-G036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xgz-FU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz-HE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-Hk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xgz-FU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz-H036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-IU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xgz-FU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz-Ik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-JE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xgz-FU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz-JU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-J036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xgz-FU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz-KE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-Kk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xgz-FU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz-K036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-LU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xgz92E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz-Lk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz-L036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz-ME36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-Mk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xgz-M036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz-NE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz-NU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz-Nk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xgz-OE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-Ok36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xgz-O036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz-PE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz-PU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz-Pk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xgz-QE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-Qk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xgz-Ok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz-Q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz-RE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz-RU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-R036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xgz-Ok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz-SE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz-SU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz-Sk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-TE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xgz-FU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz-TU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xgz-T036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/__cPscBPeEeOy6eRlOY0JBA/172" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xgz-UE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg4NkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xgz-UU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xgz-Uk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xgz-U036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg4NkE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg4NkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg4Nkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg4Nk036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg4NlE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg4Nlk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg4Nl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg40oE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg40oU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg40ok36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg40sE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg40pE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg40pk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg40qE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg40tU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg40qk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg40rE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg40rk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg40sE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg40sU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg40sk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg40s036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg40tE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg40tU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg40tk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg40t036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg40uE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg40uU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg40uk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg40u036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg40vE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg40vU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotypes()->select(st|st.name = 'in' or st.name = 'out')->size()=1&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotypes()->select(st|st.name = 'in' or st.name = 'out')->size()=1&#xA;else&#xA;&#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg40vk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg40wE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg40uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg40wU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg40w036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg40uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg40xE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg40xk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg40x036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg40yE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg40yU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg40yk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg40zE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg40xk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg40zU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg40z036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg40xk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg400E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg400k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg40xk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg400036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg401U36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg401k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg401036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg402E36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg402U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg402036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg401U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg403E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg403k36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg401U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg403036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg404U36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg401U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg404k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg405E36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg401U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg405U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg405036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg401U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg406E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg406k36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg401U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg406036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg407U36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg4NkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg407k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg407036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg408E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg408k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg408036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg409E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg409U36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg409k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg40-E36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg40-k36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg40-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg40_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg40_U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg40_k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg41AE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41Ak36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg40-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41A036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg41BE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg41BU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41B036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg40-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41CE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg41CU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg41Ck36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41DE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg401U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41DU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg41D036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_zYyhoBPeEeOy6eRlOY0JBA/171" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41EE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg41FU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41EU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg41Ek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg41E036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41FU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg41Fk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg41F036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg41GE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg41GU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41G036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg41HE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg41HU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg41Hk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg41H036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg41LU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg41IU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg41I036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg41JU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg41Mk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg41J036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg41KU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg41K036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg41LU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg41Lk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg41L036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg41ME36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg41MU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg41Mk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg41M036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg41NE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg41NU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg41Nk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41N036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg41OE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg41OU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg41Ok36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotypes()->select(st|st.name = 'in' or st.name = 'out')->size()=1&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg41O036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41PU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg41N036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41Pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41QE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg41N036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41QU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41Q036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg41RE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg41RU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg41Rk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg41R036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41SU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg41Q036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41Sk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41TE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg41Q036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41TU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41T036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg41Q036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41UE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41Uk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg41U036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg41VE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg41VU36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg41Vk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41WE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg41Uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41WU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41W036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg41Uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41XE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41Xk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg41Uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41X036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41YU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg41Uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41Yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41ZE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg41Uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41ZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41Z036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg41Uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41aE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41ak36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg41FU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41a036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg41bE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg41bU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41b036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg41cE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg41cU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg41ck36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg41c036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg41dU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41d036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg41eE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg41eU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg41ek36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg41e036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg41fU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41f036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg41d036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41gE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg41gU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg41gk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41hE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg41d036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41hU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg41hk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg41h036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41iU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg41Uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41ik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg41jE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_ih3n0BPeEeOy6eRlOY0JBA/170" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41jU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg41kk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41jk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg41j036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg41kE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41kk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg41k036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg41lE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg41lU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg41lk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41mE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg41mU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg41mk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg41m036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg41nE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg41qk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg41nk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg41oE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg41ok36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg41r036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg41pE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg41pk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg41qE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg41qk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg41q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg41rE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg41rU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg41rk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg41r036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg41sE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg41sU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg41sk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg41s036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41tE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg41tU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg41tk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg41t036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotypes()->select(st|st.name = 'in' or st.name = 'out')->size()=1&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotypes()->select(st|st.name = 'in' or st.name = 'out')->size()=0&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg41uE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41uk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg41tE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41u036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41vU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg41tE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41wE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg41wU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg41wk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg41w036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg41xE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41xk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg41wE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41x036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41yU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg41wE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41zE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg41wE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41zU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41z036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg410E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg410U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg410k36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg410036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg411U36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg41z036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg411k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg412E36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg41z036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg412U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg412036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg41z036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg413E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg413k36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg41z036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg413036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg414U36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg41z036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg414k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg415E36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg41z036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg415U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg415036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg41kk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg416E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg416U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg416k36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg417E36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg417U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg417k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg417036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg418E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg418k36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg419E36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg419U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg419k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg419036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg41-E36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg41-k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg41_E36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg419E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg41_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg41_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg41_036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42AU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg419E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42Ak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg42A036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42BE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42Bk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg41z036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42B036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg42CU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_SGTNQBPeEeOy6eRlOY0JBA/169" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42Ck36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg42D036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42C036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg42DE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42DU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42D036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg42EE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg42EU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42Ek36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg42E036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42FU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg42Fk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg42F036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42GE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg42GU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg42J036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg42G036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg42HU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg42H036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg42LE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg42IU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg42I036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg42JU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg42J036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg42KE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg42KU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg42Kk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg42K036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg42LE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg42LU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg42Lk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg42L036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg42ME36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42MU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg42Mk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg42M036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42NE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg42NU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42N036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg42MU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42OE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42Ok36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg42MU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42O036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42PU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg42Pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg42P036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42QE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg42QU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42Q036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg42PU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42RE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42Rk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg42PU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42R036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42SU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg42PU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42Sk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42TE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg42TU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg42Tk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42T036EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg42UE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42Uk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg42TE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42U036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42VU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg42TE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42Vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42WE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg42TE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42WU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42W036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg42TE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42XE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42Xk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg42TE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42X036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42YU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg42TE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42Yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42ZE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg42D036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42ZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg42Zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42Z036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42aU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg42ak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg42a036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42bE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg42bU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg42b036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42cU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg42ck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg42c036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42dE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg42dU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg42d036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42eU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg42cU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42ek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg42e036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42fE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42fk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg42cU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42f036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg42gE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42gU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42g036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg42TE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42hE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg42hk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_Axh50BPeEeOy6eRlOY0JBA/168" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42h036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg42jE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42iE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg42iU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42ik36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42jE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg42jU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg42jk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42j036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg42kE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42kk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg42k036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg42lE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42lU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg42lk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg42pE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg42mE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg42mk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg42nE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg42qU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg42nk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg42oE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg42ok36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg42pE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg42pU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg42pk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg42p036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg42qE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg42qU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg42qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg42q036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg42rE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg42rU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42rk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg42r036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg42sE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42sU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg42sk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42tE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg42rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42tU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42t036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg42rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42uE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42uk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg42u036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg42vE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42vU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg42vk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42wE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg42uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42wU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42w036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg42uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42xE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42xk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg42uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42x036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42yU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg42yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg42y036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42zE36EeSS5u8wdxTIGg" key="documentation" value="let set_of_types : Set(uml::Stereotype) = &#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset' or &#xA;&#x9;stereotype.name = 'object' or &#xA;&#x9;stereotype.name = 'money' or &#xA;&#x9;stereotype.name = 'boolean' or &#xA;&#x9;stereotype.name = 'number' or &#xA;&#x9;stereotype.name = 'date') in&#xA;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;set_of_types->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;set_of_types->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg42zU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42z036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg42yU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg420E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg420k36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg42yU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg420036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg421U36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg42yU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg421k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg422E36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg42yU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg422U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg422036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg42yU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg423E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg423k36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg42yU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg423036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg424U36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg42jE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg424k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg424036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg425E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg425k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg425036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg426E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg426U36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg426k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg427E36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg427k36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg427036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg428E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg428U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg428k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg429E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg429k36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg427k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg429036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg42-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42-U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg42-036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg427k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg42_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg42_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg42_k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43AE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg42yU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43AU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg43A036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_onOR8BPdEeOy6eRlOY0JBA/167" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43BE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg43CU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43BU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg43Bk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg43B036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43CU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg43Ck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg43C036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg43DE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg43DU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43D036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg43EE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg43EU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg43Ek36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg43E036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg43IU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg43FU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg43F036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg43GU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg43Jk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg43G036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg43HU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg43H036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg43IU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg43Ik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg43I036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg43JE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg43JU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg43Jk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg43J036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg43KE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg43KU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg43Kk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43K036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg43LE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg43LU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg43Lk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg43L036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43MU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg43K036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43Mk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43NE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg43K036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43NU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43N036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg43OE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg43OU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg43Ok36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg43O036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43PU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg43N036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43Pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43QE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg43N036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43QU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43Q036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg43N036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43RE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43Rk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg43R036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg43SE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg43SU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name = 'objectset')->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;true&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg43Sk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43TE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg43Rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43TU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43T036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg43Rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43UE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43Uk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg43Rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43U036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43VU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg43Rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43Vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43WE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg43Rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43WU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43W036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg43Rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43XE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43Xk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg43CU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43X036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg43YE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg43YU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43Y036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg43ZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg43ZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg43Zk36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg43Z036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg43aU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43a036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg43bE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg43bU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg43bk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg43b036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg43cU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43c036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg43a036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43dE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg43dU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg43dk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43eE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg43a036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43eU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg43ek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg43e036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43fU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg43Rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43fk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg43gE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_joeK4BPbEeOy6eRlOY0JBA/166" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43gU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg43hk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43gk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg43g036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg43hE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43hk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg43h036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg43iE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg43iU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg43ik36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43jE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg43jU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg43jk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg43j036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg43kE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg43nk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg43kk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg43lE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg43lk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg43o036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg43mE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg43mk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg43nE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg43nk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg43n036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg43oE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg43oU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg43ok36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg43o036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg43pE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg43pU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg43pk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg43p036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43qE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg43qU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg43qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg43q036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg43rE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43rk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg43qE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43r036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43sU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg43qE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43sk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43tE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg43tU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg43tk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg43t036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg43uE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43uk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg43tE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43u036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43vU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg43tE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43wE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg43tE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43wU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43w036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg43xE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg43xU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg43xk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.oclIsKindOf(type))->size() = 1&#xA;&#x9;&#xA;else&#xA;&#xA;&#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.oclIsKindOf(type))->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg43x036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg43yU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg43w036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg43yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5bsE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg43w036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5bsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5bs036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg43w036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5btE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5btk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg43w036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5bt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5buU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg43w036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5buk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5bvE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg43w036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5bvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5bv036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg43hk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5bwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5bwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5bwk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5bxE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg5bxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5bxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5bx036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5byE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5byk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5bzE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg5bzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5bzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5bz036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5b0E36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5b0k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5b1E36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg5bzE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5b1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5b1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5b1036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5b2U36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg5bzE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5b2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5b2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5b3E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5b3k36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg43w036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5b3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg5b4U36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_csfQMBPbEeOy6eRlOY0JBA/165" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5b4k36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg5b5036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5b4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5b5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5b5U36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5b5036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg5b6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5b6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5b6k36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5b6036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5b7U36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg5b7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5b7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5b8E36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5b8U36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg5b_036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5b8036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5b9U36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5b9036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg5cBE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5b-U36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5b-036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5b_U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg5b_036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg5cAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg5cAU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg5cAk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg5cA036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg5cBE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg5cBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg5cBk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg5cB036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg5cCE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cCU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg5cCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5cC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5cDE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5cDU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cD036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg5cCU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cEk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg5cCU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cFU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg5cFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5cF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5cGE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5cGU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cG036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg5cFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cHk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg5cFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cIU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg5cFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cJE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg5cJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg5cJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5cJ036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;false&#xA;&#x9;&#xA;else&#xA;&#xA;&#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.oclIsKindOf(type))->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5cKE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cKk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg5cJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cLU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg5cJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cME36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg5cJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cM036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg5cJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cNk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg5cJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cOU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg5cJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cPE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg5b5036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5cPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5cP036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cQU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg5cQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5cQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5cRE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5cRU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5cR036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cSU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg5cSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5cS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5cTE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5cTU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5cT036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cUU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg5cSU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5cU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5cVE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cVk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg5cSU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5cWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5cWU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cW036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg5cJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg5cXk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_CwSM4BPbEeOy6eRlOY0JBA/164" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cX036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg5cZE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5cYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5cYk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cZE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg5cZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5cZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5cZ036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5caE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cak36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg5ca036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5cbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5cbU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5cbk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg5cfE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5ccE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5cck36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5cdE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg5cgU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5cdk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5ceE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5cek36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg5cfE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg5cfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg5cfk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg5cf036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg5cgE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg5cgU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg5cgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg5cg036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg5chE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg5chU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5chk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg5ch036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5ciE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5ciU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5cik36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cjE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg5chk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cj036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg5chk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5ckE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5ckk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg5ck036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5clE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5clU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5clk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cmE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg5ckk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cm036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg5ckk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cnE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cnk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg5ckk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5coU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg5cok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg5co036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5cpE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;&#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.oclIsKindOf(type))->size() = 1&#xA;&#xA;else&#xA;&#xA;&#x9;self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.oclIsKindOf(type))->size() = 0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5cpU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cp036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg5coU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cqk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg5coU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5crU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg5coU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5crk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5csE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg5coU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5csU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cs036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg5coU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5ctE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5ctk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg5coU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5ct036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cuU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg5cZE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5cu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5cvE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cvk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg5cv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5cwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5cwU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5cwk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5cxE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5cxk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg5cx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5cyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5cyU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5cyk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5czE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5czk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg5cxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5cz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5c0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5c0U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5c0036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg5cxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5c1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5c1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5c1k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5c2E36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg5coU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5c2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg5c2036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_9umtoBPYEeOy6eRlOY0JBA/163" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5c3E36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg5c4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5c3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5c3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5c3036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5c4U36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg5c4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5c4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5c5E36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5c5U36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5c5036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg5c6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5c6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5c6k36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5c6036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg5c-U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5c7U36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5c7036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5c8U36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg5c_k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5c8036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5c9U36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5c9036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg5c-U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg5c-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg5c-036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg5c_E36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg5c_U36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg5c_k36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg5c_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg5dAE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg5dAU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg5dAk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dA036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg5dBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5dBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5dBk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5dB036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dCU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg5dA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dDE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg5dA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dD036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg5dEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5dEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5dEk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5dE036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dFU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg5dD036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dGE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg5dD036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dG036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg5dD036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dHk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg5dH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg5dIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5dIU36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5dIk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dJE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg5dHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dJ036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg5dHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dKk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg5dHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dLU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg5dHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dME36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg5dHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dM036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg5dHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dNk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg5c4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5dOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5dOU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dO036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg5dPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5dPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5dPk36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5dP036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5dQU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dQ036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg5dRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5dRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5dRk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5dR036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5dSU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dS036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg5dQ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5dTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5dTk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dUE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg5dQ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5dUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5dU036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dVU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg5dHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg5dWE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_1VOA0BPYEeOy6eRlOY0JBA/162" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dWU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg5dXk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5dW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5dXE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dXk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg5dX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5dYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5dYU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5dYk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dZE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg5dZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5dZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5dZ036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;not self.constraint->notEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5daE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg5ddk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5dak36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5dbE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5dbk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg5de036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5dcE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5dck36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5ddE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg5ddk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg5dd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg5deE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg5deU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg5dek36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg5de036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg5dfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg5dfU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg5dfk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg5df036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dgE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg5dgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5dgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5dg036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5dhE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dhk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg5dgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5diU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg5dgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5djE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg5djU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5djk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5dj036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5dkE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dkk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg5djE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dlU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg5djE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dmE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg5djE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dm036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg5dnE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg5dnU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5dnk36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5dn036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5doU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg5dm036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dpE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg5dm036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dp036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg5dm036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dqk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg5dm036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5drU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg5dm036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5drk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dsE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg5dm036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5ds036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg5dXk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5dtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5dtk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5duE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg5duU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5duk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5du036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5dvE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5dvk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dwE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg5dwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5dwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5dw036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5dxE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5dxk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dyE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg5dwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5dyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5dy036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5dzU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg5dwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5dzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5dz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5d0E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5d0k36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg5dm036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5d0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg5d1U36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_oIzp4BPYEeOy6eRlOY0JBA/161" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5d1k36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg5d2036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5d1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5d2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5d2U36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5d2036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg5d3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5d3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5d3k36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5d3036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5d4U36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg5d4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5d4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5d5E36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type=Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5d5U36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg5d8036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5d5036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5d6U36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5d6036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg5d-E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5d7U36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5d7036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5d8U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg5d8036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg5d9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg5d9U36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg5d9k36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg5d9036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg5d-E36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg5d-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg5d-k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg5d-036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg5d_E36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5d_U36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg5d_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5d_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5eAE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5eAU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eA036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg5d_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5eBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eBk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg5d_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5eB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eCU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg5eCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5eC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5eDE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5eDU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eD036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg5eCU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5eEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eEk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg5eCU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5eE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eFU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg5eCU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5eFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eGE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg5eGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg5eGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5eG036EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5eHE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eHk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg5eGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5eH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eIU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg5eGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5eIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eJE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg5eGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5eJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eJ036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg5eGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5eKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eKk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg5eGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5eK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eLU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg5eGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5eLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eME36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg5d2036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5eMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5eMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5eM036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eNU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg5eNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5eN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5eOE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5eOU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5eO036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5ePU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg5ePk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5eP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5eQE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5eQU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5eQ036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eRU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg5ePU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5eRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5eR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5eSE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eSk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg5ePU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5eS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5eTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5eTU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eT036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg5eGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5eUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg5eUk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_OvzsMBPWEeOy6eRlOY0JBA/160" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eU036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg5eWE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5eVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5eVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5eVk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eWE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg5eWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5eWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5eW036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5eXE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eXk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg5eX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5eYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5eYU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> Query_Type::NONE  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5eYk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg5ecE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5eZE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5eZk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5eaE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg5edU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5eak36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5ebE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5ebk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg5ecE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg5ecU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg5eck36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg5ec036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg5edE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg5edU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg5edk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg5ed036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg5eeE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg5eeU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eek36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg5ee036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5efE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5efU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5efk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5egE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg5eek36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5egU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eg036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg5eek36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5ehE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5ehk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg5eh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5eiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5eiU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5eik36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5ejE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg5ehk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5ejU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5ej036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg5ehk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5ekE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5ekk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg5ehk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5ek036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5elU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg5elk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg5el036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5emE36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5emU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5em036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg5elU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5enE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5enk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg5elU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5en036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eoU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg5elU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5eok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5epE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg5elU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5epU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5ep036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg5elU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5eqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5eqk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg5elU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5eq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5erU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg5eWE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5erk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5er036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5esE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5esk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg5es036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5etE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5etU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5etk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg5euE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5euk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg5eu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5evE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5evU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5evk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg5ewE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5ewk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg5euk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg5ew036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg5exE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg5exU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg5ex036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg5euk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6CwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6CwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6Cwk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6CxE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg5elU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6CxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg6Cx036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_9-SPkBOwEeOy6eRlOY0JBA/159" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6CyE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg6CzU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6CyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6Cyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6Cy036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6CzU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg6Czk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6Cz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6C0E36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6C0U36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6C0036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg6C1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6C1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6C1k36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> ''  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6C1036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg6C5U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6C2U36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6C2036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6C3U36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg6C6k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6C3036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6C4U36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6C4036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6C5U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg6C5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6C5036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6C6E36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg6C6U36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6C6k36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg6C6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6C7E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6C7U36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg6C7k36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6C7036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg6C8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6C8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6C8k36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6C8036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6C9U36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg6C7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6C9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6C-E36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg6C7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6C-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6C-036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg6C_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6C_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6C_k36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6C_036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DAU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg6C-036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DBE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg6C-036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DB036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg6C-036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DCk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg6DC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg6DDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6DDU36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6DDk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DEE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg6DCk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DE036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg6DCk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DFk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg6DCk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DGU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg6DCk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DHE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg6DCk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DH036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg6DCk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DIk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg6CzU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6DJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6DJU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DJ036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg6DKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6DKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6DKk36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6DK036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6DLU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DL036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg6DME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6DMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6DMk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6DM036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6DNU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DN036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg6DL036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6DOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6DOk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DPE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg6DL036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6DPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6DP036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DQU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg6DCk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg6DRE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_N1gcYBOwEeOy6eRlOY0JBA/158" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DRU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg6DSk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6DR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6DSE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DSk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg6DS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6DTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6DTU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6DTk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DUE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg6DUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6DUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6DU036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> ''  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6DVE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg6DYk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6DVk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6DWE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6DWk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg6DZ036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6DXE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6DXk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6DYE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6DYk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg6DY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6DZE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6DZU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg6DZk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6DZ036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg6DaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6DaU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6Dak36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg6Da036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DbE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg6DbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6Dbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6Db036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6DcE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Dck36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg6DbE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Dc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DdU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg6DbE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Ddk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DeE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg6DeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6Dek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6De036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6DfE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Dfk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg6DeE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Df036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DgU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg6DeE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Dgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DhE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg6DeE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Dh036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg6DiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg6DiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6Dik36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6Di036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DjU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg6Dh036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Djk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DkE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg6Dh036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Dk036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg6Dh036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Dlk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg6Dh036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Dl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DmU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg6Dh036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Dmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DnE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg6Dh036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DnU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Dn036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg6DSk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6DoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6Dok36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DpE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg6DpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6Dpk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6Dp036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6DqE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6Dqk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DrE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg6DrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6Drk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6Dr036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6DsE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6Dsk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DtE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg6DrE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6DtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6Dtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6Dt036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DuU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg6DrE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Duk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6Du036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6DvE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Dvk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg6Dh036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Dv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg6DwU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_9n_r8BOvEeOy6eRlOY0JBA/157" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Dwk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg6Dx036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Dw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6DxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6DxU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Dx036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg6DyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6DyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6Dyk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6Dy036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6DzU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg6Dzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6Dz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6D0E36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> ''  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6D0U36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg6D3036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6D0036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6D1U36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6D1036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg6D5E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6D2U36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6D2036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6D3U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6D3036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg6D4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6D4U36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6D4k36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg6D4036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6D5E36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg6D5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6D5k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6D5036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg6D6E36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6D6U36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg6D6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6D6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6D7E36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6D7U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6D7036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg6D6U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6D8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6D8k36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg6D6U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6D8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6D9U36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg6D9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6D9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6D-E36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6D-U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6D-036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg6D9U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6D_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6D_k36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg6D9U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6D_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EAU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg6D9U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EBE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg6EBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg6EBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6EB036EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6ECE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6ECk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg6EBE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EDU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg6EBE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EEE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg6EBE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EE036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg6EBE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EFk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg6EBE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EGU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg6EBE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EHE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg6Dx036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6EHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6EH036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EIU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg6EIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6EI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6EJE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6EJU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6EJ036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EKU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg6EKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6EK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6ELE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6ELU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6EL036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EMU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg6EKU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6EM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6ENE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6ENk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg6EKU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6EOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6EOU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EO036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg6EBE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg6EPk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_9_QK0BOuEeOy6eRlOY0JBA/156" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EP036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg6ERE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6EQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6EQk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6ERE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg6ERU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6ERk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6ER036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6ESE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6ESk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg6ES036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6ETE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6ETU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> ''  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6ETk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg6EXE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6EUE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6EUk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6EVE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg6EYU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6EVk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6EWE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6EWk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6EXE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg6EXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6EXk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6EX036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg6EYE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6EYU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg6EYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6EY036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6EZE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg6EZU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EZk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg6EZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6EaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6EaU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6Eak36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EbE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg6EZk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Eb036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg6EZk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Eck36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg6Ec036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6EdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6EdU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6Edk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EeE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg6Eck36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Ee036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg6Eck36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Efk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg6Eck36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Ef036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EgU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg6Egk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg6Eg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6EhE36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6EhU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Eh036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg6EgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Eik36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg6EgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Ei036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EjU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg6EgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Ejk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EkE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg6EgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Ek036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg6EgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6ElE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Elk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg6EgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6El036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EmU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg6ERE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Emk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6Em036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6EnE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Enk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg6En036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6EoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6EoU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6Eok36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6EpE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Epk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg6Ep036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6EqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6EqU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6Eqk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6ErE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Erk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg6Epk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Er036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6EsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6EsU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Es036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg6Epk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6EtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6Etk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty())->size() = 1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EuE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg6EgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg6Eu036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_1EDxcBOuEeOy6eRlOY0JBA/155" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EvE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg6EwU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6EvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6Evk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6Ev036EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6EwU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg6Ewk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6Ew036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6ExE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6ExU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Ex036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg6EyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6EyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6Eyk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> ''  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6Ey036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg6E2U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6EzU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6Ez036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6E0U36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg6E3k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6E0036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6E1U36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6E1036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6E2U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg6E2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6E2036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6E3E36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg6E3U36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6E3k36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg6E3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6E4E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6E4U36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg6E4k36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6E4036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg6E5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6E5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6E5k36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6E5036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6E6U36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg6E4036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6E6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6E7E36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg6E4036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6E7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6E7036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg6E8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6E8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6E8k36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6E8036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6E9U36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg6E7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6E9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6E-E36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg6E7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6E-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6E-036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg6E7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6E_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6E_k36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg6E_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg6FAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6FAU36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6FAk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FBE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg6E_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6FBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FB036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg6E_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6FCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FCk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg6E_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6FC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FDU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg6E_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6FDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FEE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg6E_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6FEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FE036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg6E_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6FFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FFk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg6EwU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6FF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6FGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6FGU36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FG036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg6FHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6FHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6FHk36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6FH036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6FIU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FI036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg6FJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6FJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6FJk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6FJ036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6FKU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FK036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg6FI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6FLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6FLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6FLk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FME36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg6FI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6FMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6FMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6FM036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FNU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg6E_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6FNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg6FOE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_srFUUBOuEeOy6eRlOY0JBA/154" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FOU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg6FPk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6FOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6FO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6FPE36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FPk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg6FP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6FQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6FQU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6FQk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FRE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg6FRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6FRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6FR036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> ''  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6FSE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg6FVk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6FSk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6FTE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6FTk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg6FW036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6FUE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6FUk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6FVE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6FVk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg6FV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6FWE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6FWU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg6FWk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6FW036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg6FXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6FXU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6FXk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg6FX036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FYE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg6FYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6FYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6FY036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6FZE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FZk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg6FYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6FZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FaU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg6FYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Fak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FbE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg6FbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6Fbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6Fb036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6FcE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Fck36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg6FbE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Fc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FdU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg6FbE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Fdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FeE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg6FbE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6FeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Fe036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg6FfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg6FfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6Ffk36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6Ff036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FgU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg6Fe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Fgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FhE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg6Fe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6FhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Fh036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg6Fe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6FiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Fik36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg6Fe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Fi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FjU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg6Fe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Fjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FkE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg6Fe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6FkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Fk036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg6FPk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6FlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6FlU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6Flk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FmE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg6FmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6Fmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6Fm036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6FnE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6Fnk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FoE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg6FoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6Fok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6Fo036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6FpE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6Fpk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FqE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg6FoE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6FqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6Fqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6Fq036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty())->size() = 1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6FrU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg6FoE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Frk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6Fr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6FsE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Fsk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg6Fe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Fs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg6FtU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_kX-rIBOtEeOy6eRlOY0JBA/153" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6Ftk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg6p0k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6Ft036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6FuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6p0E36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6p0k36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg6p0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6p1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6p1U36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6p1k36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6p2E36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg6p2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6p2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6p2036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> ''  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6p3E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg6p6k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6p3k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6p4E36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6p4k36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg6p7036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6p5E36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6p5k36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6p6E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6p6k36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg6p6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6p7E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6p7U36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg6p7k36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6p7036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg6p8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6p8U36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6p8k36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg6p8036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6p9E36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg6p9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6p9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6p9036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6p-E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6p-k36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg6p9E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6p-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6p_U36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg6p9E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6p_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qAE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg6qAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6qAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qA036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6qBE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qBk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg6qAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qCU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg6qAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qDE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg6qAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qD036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg6qEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg6qEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qEk36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6qE036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qFU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg6qD036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qGE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg6qD036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qG036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg6qD036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qHk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg6qD036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qIU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg6qD036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qJE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg6qD036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qJ036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg6p0k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6qKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qKk36EeSS5u8wdxTIGg" key="documentation" value="uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qLE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg6qLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6qLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qL036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6qME36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6qMk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qNE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg6qNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6qNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qN036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6qOE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6qOk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qPE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg6qNE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6qPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qP036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qQU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg6qNE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6qQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qRE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qRk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg6qD036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg6qSU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_yCzHQBOrEeOy6eRlOY0JBA/152" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qSk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg6qT036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6qTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qTU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment->select(comment| not comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined())->size() = 1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qT036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg6qUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6qUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qUk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6qU036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qVU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg6qVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6qV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qWE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> ''  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6qWU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg6qZ036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6qW036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6qXU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6qX036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg6qbE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6qYU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6qY036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6qZU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6qZ036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg6qaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6qaU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6qak36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg6qa036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6qbE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg6qbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6qbk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6qb036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg6qcE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qcU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg6qck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6qc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qdE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6qdU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qd036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg6qcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qek36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg6qcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qfU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg6qfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6qf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qgE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6qgU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qg036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg6qfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qhk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg6qfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qiU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg6qfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qjE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg6qjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg6qjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qj036EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6qkE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qkk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg6qjE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qlU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg6qjE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qmE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg6qjE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qm036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg6qjE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qnE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qnk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg6qjE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qoU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg6qjE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qpE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg6qT036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6qpk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qp036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qqU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg6qqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6qq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qrE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6qrU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6qr036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qsU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg6qsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6qs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qtE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6qtU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6qt036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6quU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg6qsU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6quk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6qu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qvE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qvk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg6qsU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6qwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qwU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qw036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg6qjE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg6qxk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_k39doBOrEeOy6eRlOY0JBA/151" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qx036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg6qzE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6qyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6qyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qyk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment->select(comment|comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty())->size() = 1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6qzE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg6qzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6qzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6qz036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6q0E36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6q0k36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg6q0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6q1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6q1U36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> ''  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6q1k36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg6q5E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6q2E36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6q2k36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6q3E36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg6q6U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6q3k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6q4E36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6q4k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6q5E36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg6q5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6q5k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6q5036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg6q6E36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6q6U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg6q6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6q6036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6q7E36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg6q7U36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6q7k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg6q7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6q8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6q8U36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6q8k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6q9E36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg6q7k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6q9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6q9036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg6q7k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6q-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6q-k36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg6q-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6q_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6q_U36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6q_k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rAE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg6q-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rA036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg6q-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rBk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg6q-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rCU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg6rCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg6rC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6rDE36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6rDU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rD036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg6rCU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rEk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg6rCU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rFU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg6rCU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rGE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg6rCU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rG036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg6rCU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rHk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg6rCU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rIU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg6qzE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6rI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6rJE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rJk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg6rJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6rKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6rKU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6rKk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6rLE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rLk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg6rL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6rME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6rMU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6rMk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6rNE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rNk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg6rLk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6rOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6rOU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rO036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg6rLk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6rPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6rPk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rQE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg6rCU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg6rQ036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_RkIcgBOrEeOy6eRlOY0JBA/150" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rRE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg6rSU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6rRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6rR036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rSU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg6rSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6rS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6rTE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6rTU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rT036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg6rUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6rUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6rUk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> ''  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6rU036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg6rYU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6rVU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6rV036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6rWU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg6rZk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6rW036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6rXU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6rX036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6rYU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg6rYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6rY036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6rZE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg6rZU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6rZk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg6rZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6raE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6raU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg6rak36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6ra036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg6rbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6rbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6rbk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6rb036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rcU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg6ra036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rdE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg6ra036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rd036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg6reE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6reU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6rek36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6re036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rfU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg6rd036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rgE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg6rd036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rg036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg6rd036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rhk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg6rh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg6riE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6riU36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6rik36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rjE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg6rhk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rj036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg6rhk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rkk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg6rhk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rlU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg6rhk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rmE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg6rhk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rm036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg6rhk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rnE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rnk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg6rSU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6roE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6roU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6ro036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg6rpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6rpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6rpk36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6rp036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6rqU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rq036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg6rrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6rrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6rrk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6rr036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6rsU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rs036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg6rq036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6rtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6rtk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6ruE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg6rq036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6ruU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6ruk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6ru036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rvU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg6rhk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg6rwE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_TZa_oBOqEeOy6eRlOY0JBA/149" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rwU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg6rxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6rwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6rw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6rxE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rxk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg6rx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6ryE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6ryU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6ryk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6rzE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg6rzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6rzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6rz036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> ''  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6r0E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg6r3k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6r0k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6r1E36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6r1k36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg6r4036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6r2E36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6r2k36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6r3E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6r3k36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg6r3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6r4E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6r4U36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg6r4k36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6r4036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg6r5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6r5U36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6r5k36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg6r5036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6r6E36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg6r6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6r6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6r6036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6r7E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6r7k36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg6r6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6r7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6r8U36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg6r6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6r8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6r9E36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg6r9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6r9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6r9036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6r-E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6r-k36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg6r9E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6r-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6r_U36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg6r9E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6r_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sAE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg6r9E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6sAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sA036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg6sBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg6sBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6sBk36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6sB036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sCU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg6sA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6sCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sDE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg6sA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6sDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sD036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg6sA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6sEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sEk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg6sA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6sE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sFU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg6sA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6sFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sGE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg6sA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6sGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sG036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg6rxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6sHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6sHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6sHk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sIE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg6sIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6sIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6sI036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6sJE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6sJk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sKE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg6sKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6sKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6sK036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::constraint').oclIsUndefined())->size()=1 xor &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::formula').oclIsUndefined())->size()=1&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6sLE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6sLk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sME36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg6sKE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6sMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6sMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6sM036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sNU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg6sKE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6sNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6sN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6sOE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sOk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg6sA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6sO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg6sPU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_KoiOQBOpEeOy6eRlOY0JBA/148" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sPk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg6sQ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6sP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6sQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6sQU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sQ036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg6sRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6sRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6sRk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6sR036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sSU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg6sSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6sS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6sTE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> ''  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6sTU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg6sW036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6sT036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6sUU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6sU036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg6sYE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6sVU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6sV036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6sWU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6sW036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg6sXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6sXU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6sXk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg6sX036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6sYE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg6sYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6sYk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6sY036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg6sZE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sZU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg6sZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6sZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6saE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6saU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sa036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg6sZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6sbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sbk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg6sZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6sb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6scU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg6sck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6sc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6sdE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6sdU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sd036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg6scU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6seE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sek36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg6scU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6se036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sfU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg6scU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6sfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sgE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg6sgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg6sgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6sg036EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6shE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6shk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg6sgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6sh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6siU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg6sgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6sik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sjE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg6sgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6sjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sj036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg6sgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6skE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6skk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg6sgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6sk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6slU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg6sgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6slk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6smE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg6sQ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6smU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6smk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6sm036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6snU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg6snk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6sn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6soE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6soU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6so036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6spU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg6spk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6sp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6sqE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6sqU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6sq036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6srU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg6spU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6srk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6sr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6ssE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6ssk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg6spU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6ss036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6stE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6stU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6st036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg6sgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6suE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg6suk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_8UNNABOoEeOy6eRlOY0JBA/147" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6su036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg6swE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6svE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6svU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6svk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6swE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg6swU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6swk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6sw036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6sxE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6sxk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg6sx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6syE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6syU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> ''  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6syk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg6s2E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6szE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6szk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6s0E36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg6s3U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg6s0k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6s1E36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6s1k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6s2E36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg6s2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6s2k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6s2036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg6s3E36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg6s3U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg6s3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg6s3036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg6s4E36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg6s4U36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6s4k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg6s4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6s5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6s5U36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6s5k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6s6E36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg6s4k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6s6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6s6036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg6s4k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6s7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6s7k36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg6s7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg6s8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6s8U36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6s8k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6s9E36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg6s7k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6s9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6s9036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg6s7k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6s-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6s-k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg6s7k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6s-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6s_U36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg6s_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg6s_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg6tAE36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg6tAU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6tA036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg6s_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6tBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg6tBk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg6s_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg6tB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Q4E36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg6s_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7Q4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Q4036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg6s_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7Q5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Q5k36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg6s_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7Q5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Q6U36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg6s_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7Q6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Q7E36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg6swE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7Q7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7Q7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7Q7036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Q8U36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg7Q8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7Q8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7Q9E36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7Q9U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7Q9036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Q-U36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg7Q-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7Q-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7Q_E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7Q_U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7Q_036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RAU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg7Q-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7RA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7RBE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RBk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg7Q-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7RCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7RCU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RC036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg6s_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg7RDk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_yB0XMBOoEeOy6eRlOY0JBA/146" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RD036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg7RFE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7REE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7REU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7REk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RFE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg7RFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7RFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7RF036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7RGE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RGk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg7RG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7RHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7RHU36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> ''  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7RHk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg7RLE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7RIE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7RIk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7RJE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg7RMU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7RJk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7RKE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7RKk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg7RLE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg7RLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg7RLk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg7RL036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg7RME36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg7RMU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg7RMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg7RM036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg7RNE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg7RNU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RNk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg7RN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7ROE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7ROU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7ROk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RPE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg7RNk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RP036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg7RNk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RQk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg7RQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7RRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7RRU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7RRk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RSE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg7RQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RS036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg7RQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RTk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg7RQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RUU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg7RUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg7RU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7RVE36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7RVU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RV036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg7RUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RWk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg7RUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RXU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg7RUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RYE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg7RUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RY036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg7RUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RZk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg7RUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RaU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg7RFE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7Rak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7Ra036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7RbE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Rbk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg7Rb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7RcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7RcU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7Rck36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7RdE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Rdk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg7Rd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7ReE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7ReU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7Rek36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7RfE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Rfk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg7Rdk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7Rf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7RgE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7RgU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Rg036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg7Rdk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7RhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7Rhk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RiE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg7RUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg7Ri036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_kkLtYBOoEeOy6eRlOY0JBA/145" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RjE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg7RkU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7Rjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7Rj036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RkU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg7Rkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7Rk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7RlE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7RlU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Rl036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg7RmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7RmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7Rmk36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> ''  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7Rm036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg7RqU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7RnU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7Rn036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7RoU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg7Rrk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7Ro036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7RpU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7Rp036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg7RqU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg7Rqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg7Rq036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg7RrE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg7RrU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg7Rrk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg7Rr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg7RsE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg7RsU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg7Rsk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Rs036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg7RtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7RtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7Rtk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7Rt036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RuU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg7Rs036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7Ruk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RvE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg7Rs036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Rv036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg7RwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7RwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7Rwk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7Rw036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RxU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg7Rv036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7Rxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7RyE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg7Rv036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Ry036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg7Rv036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7RzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Rzk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg7Rz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg7R0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7R0U36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7R0k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7R1E36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg7Rzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7R1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7R1036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg7Rzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7R2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7R2k36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg7Rzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7R2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7R3U36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg7Rzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7R3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7R4E36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg7Rzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7R4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7R4036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg7Rzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7R5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7R5k36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg7RkU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7R5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7R6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7R6U36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7R6036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg7R7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7R7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7R7k36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7R7036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7R8U36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7R8036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg7R9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7R9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7R9k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7R9036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7R-U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7R-036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg7R8036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7R_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7R_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7R_k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SAE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg7R8036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7SAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7SAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7SA036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SBU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg7Rzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7SBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg7SCE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_IOQZoBOoEeOy6eRlOY0JBA/144" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SCU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg7SDk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7SCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7SC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7SDE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SDk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg7SD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7SEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7SEU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7SEk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SFE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg7SFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7SFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7SF036EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> ''  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7SGE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg7SJk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7SGk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7SHE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7SHk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg7SK036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7SIE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7SIk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7SJE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg7SJk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg7SJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg7SKE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg7SKU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg7SKk36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg7SK036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg7SLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg7SLU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg7SLk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg7SL036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SME36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg7SMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7SMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7SM036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7SNE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SNk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg7SME36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7SN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SOU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg7SME36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7SOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SPE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg7SPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7SPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7SP036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7SQE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SQk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg7SPE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7SQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SRU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg7SPE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7SRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SSE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg7SPE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7SSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SS036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg7STE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg7STU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7STk36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7ST036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SUU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg7SS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7SUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SVE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg7SS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7SVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SV036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg7SS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7SWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SWk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg7SS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7SW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SXU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg7SS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7SXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SYE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg7SS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7SYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SY036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg7SDk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7SZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7SZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7SZk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SaE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg7SaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7Sak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7Sa036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7SbE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7Sbk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7ScE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg7ScU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7Sck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7Sc036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7SdE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7Sdk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SeE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg7ScE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7SeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7Sek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7Se036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SfU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg7ScE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7Sfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7Sf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7SgE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Sgk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg7SS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7Sg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg7ShU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_VqKFoBFZEeODGMc-klr1xw/143" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Shk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg7Si036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7Sh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7SiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7SiU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Si036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg7SjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7SjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7Sjk36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7Sj036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SkU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg7Skk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7Sk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7SlE36EeSS5u8wdxTIGg" key="documentation" value=" self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source &lt;> '' and&#xA;self.type &lt;> ''  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7SlU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg7So036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7Sl036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7SmU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7Sm036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg7SqE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7SnU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7Sn036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7SoU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg7So036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg7SpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg7SpU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg7Spk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg7Sp036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg7SqE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg7SqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg7Sqk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg7Sq036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg7SrE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SrU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg7Srk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7Sr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7SsE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7SsU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Ss036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg7SrU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7StE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Stk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg7SrU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7St036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SuU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg7Suk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7Su036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7SvE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7SvU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Sv036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg7SuU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7SwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Swk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg7SuU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7Sw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SxU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg7SuU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7Sxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7SyE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg7SyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg7Syk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7Sy036EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7SzE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Szk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg7SyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7Sz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7S0U36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg7SyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7S0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7S1E36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg7SyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7S1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7S1036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg7SyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7S2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7S2k36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg7SyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7S2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7S3U36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg7SyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7S3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7S4E36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg7Si036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7S4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7S4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7S4036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7S5U36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg7S5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7S5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7S6E36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7S6U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7S6036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7S7U36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg7S7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7S7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7S8E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7S8U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7S8036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7S9U36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg7S7U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7S9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7S9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7S-E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7S-k36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg7S7U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7S-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7S_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7S_U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7S_036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg7SyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg7TAk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_M9yycBFZEeODGMc-klr1xw/142" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TA036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg7TCE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7TBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7TBk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TCE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg7TCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7TCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7TC036EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7TDE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TDk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg7TD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7TEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7TEU36EeSS5u8wdxTIGg" key="documentation" value="self.source &lt;> '' and&#xA;self.type &lt;> ''  and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE&#xA; &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif&#xA;&#xA; implies&#xA;&#xA; self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA; &#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type &lt;> Agent_Type::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;implies &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7TEk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg7TIE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7TFE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7TFk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7TGE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg7TJU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7TGk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7THE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7THk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg7TIE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg7TIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg7TIk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg7TI036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg7TJE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg7TJU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg7TJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg7TJ036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg7TKE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg7TKU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TKk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg7TK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7TLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7TLU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7TLk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TME36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg7TKk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TM036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg7TKk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TNk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg7TN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7TOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7TOU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7TOk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TPE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg7TNk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TP036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg7TNk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TQk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg7TNk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TRU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg7TRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg7TR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7TSE36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7TSU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TS036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg7TRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TTk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg7TRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TUU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg7TRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TVE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg7TRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TV036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg7TRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TWk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg7TRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TXU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg7TCE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7TX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7TYE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TYk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg7TY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7TZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7TZU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7TZk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7TaE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Tak36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg7Ta036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7TbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7TbU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7Tbk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7TcE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Tck36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg7Tak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7Tc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7TdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7TdU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Td036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg7Tak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7TeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7Tek36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TfE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg7TRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg7Tf036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_-okZUBFYEeODGMc-klr1xw/141" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TgE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg7ThU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7Tgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7Tg036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7ThU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg7Thk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7Th036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7TiE36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7TiU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Ti036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg7TjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7TjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7Tjk36EeSS5u8wdxTIGg" key="documentation" value="self.source &lt;> '' and&#xA;self.type &lt;> '' &#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif&#xA;and&#xA;self.agent_type&lt;>Agent_Type::NONE and&#xA;self.question = '' and&#xA;self.constraint->isEmpty()&#xA; &#xA; implies&#xA; self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1&#xA; &#xA;self.source = ''  and&#xA;self.type = Query_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->isEmpty() and&#xA;&#xA;self.agent_type = Agent_TYpe::NONE and&#xA;self.question &lt;> ''&#xA;&#xA;implies &#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = ''  and&#xA;self.source = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7Tj036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg7TnU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7TkU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7Tk036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7TlU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg7Tok36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7Tl036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7TmU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7Tm036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg7TnU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg7Tnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg7Tn036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg7ToE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg7ToU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg7Tok36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg7To036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg7TpE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg7TpU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg7Tpk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Tp036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg7TqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7TqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7Tqk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7Tq036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TrU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg7Tp036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7Trk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TsE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg7Tp036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Ts036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg7TtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7TtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7Ttk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7Tt036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TuU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg7Ts036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7Tuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TvE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg7Ts036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Tv036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg7Ts036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Twk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg7Tw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg7TxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7TxU36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7Txk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7TyE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg7Twk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Ty036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg7Twk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7TzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7Tzk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg7Twk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7Tz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7T0U36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg7Twk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7T0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7T1E36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg7Twk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7T1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7T1036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg7Twk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7T2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7T2k36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg7ThU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7T2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7T3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7T3U36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7T3036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg7T4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7T4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7T4k36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7T4036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg7T5U36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7T5036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg7T6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7T6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7T6k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7T6036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg7T7U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7T7036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg7T5036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7T8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7T8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7T8k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7T9E36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg7T5036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7T9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7T9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7T9036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7T-U36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg7Twk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7T-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg7T_E36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_cgL0MBFXEeODGMc-klr1xw/140" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7T_U36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg7UAk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg7T_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7T_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7UAE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg7UAk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg7UA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg7UBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg7UBU36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg738E36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg738k36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg738036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg739E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg739U36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question = '' &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg739k36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg74BE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg73-E36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg73-k36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg73_E36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg74CU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg73_k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg74AE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg74Ak36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg74BE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg74BU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg74Bk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg74B036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg74CE36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg74CU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg74Ck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg74C036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg74DE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg74DU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74Dk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg74D036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg74EE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg74EU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg74Ek36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74FE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg74Dk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74FU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74F036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg74Dk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74GE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74Gk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg74G036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg74HE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg74HU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg74Hk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74IE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg74Gk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74IU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74I036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg74Gk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74JE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74Jk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg74Gk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74J036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74KU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg74Kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg74K036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg74LE36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg74LU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74L036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg74KU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74ME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74Mk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg74KU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74M036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74NU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg74KU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74Nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74OE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg74KU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74OU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74O036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg74KU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74PE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74Pk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg74KU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74P036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74QU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg7UAk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74Qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg74Q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg74RE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74Rk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg74R036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg74SE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg74SU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg74Sk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg74TE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74Tk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg74T036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg74UE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg74UU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg74Uk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg74VE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74Vk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg74Tk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74V036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg74WE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg74WU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74W036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg74Tk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74XE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg74XU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg74Xk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74YE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg74KU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74YU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg74Y036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_XAU5QBFXEeODGMc-klr1xw/139" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74ZE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg74aU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74ZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg74Zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg74Z036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74aU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg74ak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg74a036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg74bE36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg74bU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74b036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg74cE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg74cU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg74ck36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 and&#xA;self.question.oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg74c036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg74gU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg74dU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg74d036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg74eU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg74hk36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg74e036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg74fU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg74f036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg74gU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg74gk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg74g036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg74hE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg74hU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg74hk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg74h036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg74iE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg74iU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg74ik36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74i036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg74jE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg74jU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg74jk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg74j036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74kU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg74i036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74lE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg74i036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74lU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74l036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg74mE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg74mU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg74mk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg74m036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74nU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg74l036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74oE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg74l036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74oU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74o036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg74l036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74pE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74pk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg74p036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg74qE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg74qU36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg74qk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74rE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg74pk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74rU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74r036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg74pk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74sE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74sk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg74pk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74s036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74tU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg74pk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74tk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74uE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg74pk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74uU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74u036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg74pk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74vE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74vk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg74aU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg74v036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg74wE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg74wU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74w036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg74xE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg74xU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg74xk36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg74x036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg74yU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg74y036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg74zE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg74zU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg74zk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg74z036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg740U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg740036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg74y036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg741E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg741U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg741k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg742E36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg74y036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg742U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg742k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg742036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg743U36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg74pk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg743k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg744E36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_QORWoBFXEeODGMc-klr1xw/138" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg744U36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg745k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg744k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg744036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg745E36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg745k36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg745036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg746E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg746U36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg746k36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg747E36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg747U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg747k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg747036EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE  and&#xA;self.parameters->size() = 0 &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg748E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg74_k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg748k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg749E36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg749k36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg75A036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg74-E36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg74-k36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg74_E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg74_k36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg74_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg75AE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg75AU36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg75Ak36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg75A036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg75BE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg75BU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg75Bk36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg75B036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75CE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg75CU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg75Ck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg75C036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg75DE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75Dk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg75CE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75D036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75EU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg75CE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75Ek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75FE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg75FU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg75Fk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg75F036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg75GE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75Gk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg75FE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75G036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75HU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg75FE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75Hk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75IE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg75FE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75IU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75I036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg75JE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg75JU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg75Jk36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg75J036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75KU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg75I036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75Kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75LE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg75I036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75LU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75L036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg75I036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75ME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75Mk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg75I036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75M036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75NU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg75I036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75Nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75OE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg75I036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75OU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75O036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg745k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75PE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg75PU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg75Pk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75QE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg75QU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg75Qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg75Q036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg75RE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg75Rk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75SE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg75SU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg75Sk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg75S036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg75TE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg75Tk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75UE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg75SE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75UU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg75Uk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg75U036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75VU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg75SE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75Vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg75V036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg75WE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75Wk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg75I036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75W036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg75XU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_LX1MIBFXEeODGMc-klr1xw/137" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75Xk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg75Y036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75X036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg75YE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg75YU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75Y036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg75ZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg75ZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg75Zk36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg75Z036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75aU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg75ak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg75a036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg75bE36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg75bU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg75e036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg75b036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg75cU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg75c036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg75gE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg75dU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg75d036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg75eU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg75e036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg75fE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg75fU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg75fk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg75f036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg75gE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg75gU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg75gk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg75g036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg75hE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75hU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg75hk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg75h036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg75iE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg75iU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75i036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg75hU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75jE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75jk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg75hU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75j036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75kU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg75kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg75k036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg75lE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg75lU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75l036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg75kU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75mE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75mk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg75kU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75m036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75nU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg75kU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75oE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg75oU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg75ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg75o036EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg75pE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75pk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg75oE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75p036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75qU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg75oE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75rE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg75oE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75rU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75r036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg75oE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75sE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75sk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg75oE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75s036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75tU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg75oE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75tk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75uE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg75Y036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75uU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg75uk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg75u036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75vU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg75vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg75v036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg75wE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg75wU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg75w036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75xU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg75xk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg75x036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg75yE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg75yU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg75y036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg75zU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg75xU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg75zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg75z036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg750E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg750k36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg75xU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg750036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg751E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg751U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg751036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg75oE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg752E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg752k36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_YtgCMBFWEeODGMc-klr1xw/136" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg752036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg754E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg753E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg753U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg753k36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg754E36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg754U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg754k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg754036EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg755E36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg755k36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg755036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg756E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg756U36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question->isEmpty() and&#xA;self.source->isEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg756k36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg75-E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg757E36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg757k36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg758E36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg75_U36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg758k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg759E36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg759k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg75-E36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg75-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg75-k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg75-036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg75_E36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg75_U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg75_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg75_036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg76AE36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg76AU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76Ak36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg76A036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg76BE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76BU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg76Bk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76CE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg76Ak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76CU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76C036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg76Ak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76DE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76Dk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg76D036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg76EE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76EU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg76Ek36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76FE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg76Dk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76FU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76F036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg76Dk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76GE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76Gk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg76Dk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76G036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76HU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg76Hk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg76H036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76IE36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg76IU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76I036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg76HU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76JE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76Jk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg76HU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76J036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76KU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg76HU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76Kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76LE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg76HU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76LU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76L036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg76HU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76ME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76Mk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg76HU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76M036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76NU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg754E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76Nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg76N036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76OE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76Ok36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg76O036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg76PE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76PU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg76Pk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg76QE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76Qk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg76Q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg76RE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76RU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg76Rk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg76SE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76Sk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg76Qk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76S036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg76TE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76TU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76T036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg76Qk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76UE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg76UU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76Uk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76VE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg76HU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76VU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg76V036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_NYrfABFWEeODGMc-klr1xw/135" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76WE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg76XU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76WU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg76Wk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76W036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76XU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg76Xk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg76X036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76YE36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg76YU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76Y036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg76ZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg76ZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76Zk36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg76Z036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg76dU36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg76aU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg76a036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg76bU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg76ek36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg76b036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg76cU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg76c036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg76dU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg76dk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg76d036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg76eE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg76eU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg76ek36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg76e036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg76fE36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg76fU36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg76fk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76f036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg76gE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg76gU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76gk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg76g036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76hU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg76f036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76hk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76iE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg76f036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76iU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76i036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg76jE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg76jU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76jk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg76j036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76kU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg76i036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76lE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg76i036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76lU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76l036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg76i036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76mE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76mk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg76m036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg76nE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76nU36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg76nk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76oE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg76mk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76oU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76o036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg76mk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76pE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76pk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg76mk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76p036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76qU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg76mk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76rE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg76mk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76rU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76r036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg76mk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76sE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76sk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg76XU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76s036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg76tE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76tU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76t036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg76uE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg76uU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76uk36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg76u036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg76vU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76v036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg76wE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg76wU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76wk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg76w036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg76xU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76x036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg76v036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76yE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg76yU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76yk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76zE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg76v036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg76zU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg76zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76z036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg760U36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg76mk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg760k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg761E36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_Dyfn4BFWEeODGMc-klr1xw/134" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg761U36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg762k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg761k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg761036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg762E36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg762k36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg762036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg763E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg763U36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg763k36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg764E36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg764U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg764k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg764036EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() and&#xA;self.source.oclIsUndefined() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg765E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg768k36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg765k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg766E36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg766k36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg769036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg767E36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg767k36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg768E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg768k36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg768036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg769E36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg769U36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg769k36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg769036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg76-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg76-U36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg76-k36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg76-036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg76_E36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg76_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg76_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg76_036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg77AE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg77Ak36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg76_E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg77A036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg77BU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg76_E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg77Bk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg77CE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg77CU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg77Ck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg77C036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg77DE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg77Dk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg77CE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg77D036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg77EU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg77CE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg77Ek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg77FE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg77CE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg77FU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg77F036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg8fAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg8fAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8fAk36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8fA036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fBU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg77F036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fCE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg77F036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fC036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg77F036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fDk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg77F036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fEU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg77F036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fFE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg77F036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fF036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg762k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8fGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8fGk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fHE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg8fHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8fHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8fH036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8fIE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8fIk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fJE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg8fJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8fJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8fJ036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8fKE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8fKk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fLE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg8fJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8fLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8fL036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fMU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg8fJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8fM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8fNE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fNk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg77F036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg8fOU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_-N7MEBFVEeODGMc-klr1xw/133" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fOk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg8fP036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8fPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8fPU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fP036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg8fQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8fQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8fQk36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8fQ036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fRU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg8fRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8fR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8fSE36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1 and&#xA;self.source.oclIsUndefined() and&#xA;self.type = Query_Type::NONE and&#xA;self.agent_type = Agent_Type::NONE&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8fSU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg8fV036EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8fS036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8fTU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8fT036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg8fXE36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8fUU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8fU036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8fVU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg8fV036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg8fWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg8fWU36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg8fWk36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg8fW036EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg8fXE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg8fXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg8fXk36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg8fX036EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg8fYE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fYU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg8fYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8fY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8fZE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8fZU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fZ036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg8fYU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8faE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fak36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg8fYU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fbU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg8fbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8fb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8fcE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8fcU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fc036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg8fbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fdk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg8fbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8feU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg8fbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8ffE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg8ffU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg8ffk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8ff036EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8fgE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fgk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg8ffE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fhU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg8ffE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fiE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg8ffE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fi036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg8ffE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fjk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg8ffE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fkU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg8ffE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8flE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg8fP036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8flU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8flk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8fl036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fmU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg8fmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8fm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8fnE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8fnU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8fn036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8foU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg8fok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8fo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8fpE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8fpU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8fp036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fqU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg8foU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8fq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8frE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8frk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg8foU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8fsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8fsU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fs036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg8ffE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8ftE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg8ftk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_ugpa4BFVEeODGMc-klr1xw/132" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8ft036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg8fvE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8fuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8fuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8fuk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fvE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg8fvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8fvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8fv036EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8fwE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8fwk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg8fw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8fxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8fxU36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8fxk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg8f1E36EeSS5u8wdxTIGg" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8fyE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8fyk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8fzE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg8f2U36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8fzk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8f0E36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8f0k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg8f1E36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg8f1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg8f1k36EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg8f1036EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg8f2E36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg8f2U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg8f2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg8f2036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg8f3E36EeSS5u8wdxTIGg" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_xg8f3U36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8f3k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg8f3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8f4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8f4U36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8f4k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8f5E36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg8f3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8f5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8f5036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg8f3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8f6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8f6k36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg8f6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8f7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8f7U36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8f7k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8f8E36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg8f6k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8f8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8f8036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg8f6k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8f9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8f9k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg8f6k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8f9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8f-U36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg8f-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg8f-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8f_E36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8f_U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8f_036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg8f-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gAk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg8f-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gBU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg8f-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gCE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg8f-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gC036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg8f-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gDk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg8f-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gEU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg8fvE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8gE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8gFE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gFk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg8gF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8gGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8gGU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8gGk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8gHE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gHk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg8gH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8gIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8gIU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8gIk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8gJE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gJk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg8gHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8gKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8gKU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gK036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg8gHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8gLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8gLk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gME36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg8f-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg8gM036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_nXg1ABFVEeODGMc-klr1xw/131" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gNE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg8gOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8gNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8gN036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gOU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg8gOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8gO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8gPE36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8gPU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gP036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg8gQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8gQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8gQk36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8gQ036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg8gUU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8gRU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8gR036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8gSU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg8gVk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8gS036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8gTU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8gT036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg8gUU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg8gUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg8gU036EeSS5u8wdxTIGg" name="NONE"/>
          <eLiterals xmi:id="_xg8gVE36EeSS5u8wdxTIGg" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_xg8gVU36EeSS5u8wdxTIGg" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg8gVk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg8gV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg8gWE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg8gWU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gWk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg8gW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8gXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8gXU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8gXk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gYE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg8gWk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gY036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg8gWk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gZk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg8gZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8gaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8gaU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8gak36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gbE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg8gZk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gb036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg8gZk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gck36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg8gZk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gdU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg8gdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg8gd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8geE36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8geU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8ge036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg8gdU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gfk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg8gdU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8ggU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg8gdU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8ggk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8ghE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg8gdU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8ghU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gh036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg8gdU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8giE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gik36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg8gdU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gjU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg8gOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8gj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8gkE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gkk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg8gk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8glE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8glU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8glk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8gmE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gmk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg8gm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8gnE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8gnU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8gnk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8goE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gok36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg8gmk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8go036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8gpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8gpU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gp036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg8gmk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8gqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8gqk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8grE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg8gdU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8grU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg8gr036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_ZzvuABFVEeODGMc-klr1xw/130" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gsE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg8gtU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8gsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8gsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8gs036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gtU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg8gtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8gt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8guE36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8guU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8gu036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg8gvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8gvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8gvk36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8gv036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg8gzU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8gwU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8gw036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8gxU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg8g0U36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8gx036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8gyU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8gy036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg8gzU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg8gzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg8gz036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg8g0E36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg8g0U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg8g0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg8g0036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg8g1E36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8g1U36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg8g1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8g1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8g2E36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8g2U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8g2036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg8g1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8g3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8g3k36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg8g1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8g3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8g4U36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg8g4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8g4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8g5E36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8g5U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8g5036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg8g4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8g6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8g6k36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg8g4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8g6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8g7U36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg8g4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8g7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8g8E36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg8g8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg8g8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8g8036EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8g9E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8g9k36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg8g8E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8g9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8g-U36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg8g8E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8g-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8g_E36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg8g8E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8g_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8g_036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg8g8E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hAk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg8g8E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hBU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg8g8E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hCE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg8gtU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8hCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8hC036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hDU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg8hDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8hD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8hEE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8hEU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8hE036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hFU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg8hFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8hF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8hGE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8hGU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8hG036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hHU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg8hFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8hH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8hIE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hIk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg8hFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8hJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8hJU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hJ036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg8g8E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg8hKk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_ph_lABFUEeODGMc-klr1xw/129" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hK036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg8hME36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8hLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8hLk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hME36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg8hMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8hMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8hM036EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8hNE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hNk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg8hN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8hOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8hOU36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8hOk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg8hSE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8hPE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8hPk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8hQE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg8hTE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8hQk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8hRE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8hRk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg8hSE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg8hSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg8hSk36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg8hS036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg8hTE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg8hTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg8hTk36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg8hT036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hUE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg8hUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8hUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8hU036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8hVE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hVk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg8hUE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hWU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg8hUE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hXE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg8hXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8hXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8hX036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8hYE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hYk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg8hXE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hZU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg8hXE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8haE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg8hXE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8haU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8ha036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg8hbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg8hbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8hbk36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8hb036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hcU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg8ha036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hdE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg8ha036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hd036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg8ha036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8heE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hek36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg8ha036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8he036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hfU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg8ha036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hgE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg8ha036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hg036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg8hME36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8hhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8hhk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hiE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg8hiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8hik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8hi036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8hjE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8hjk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hkE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg8hkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8hkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8hk036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8hlE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8hlk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hmE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg8hkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8hmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8hm036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hnU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg8hkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8hn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8hoE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hok36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg8ha036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8ho036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg8hpU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_PgaScBFUEeODGMc-klr1xw/128" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hpk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg8hq036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8hp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8hqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8hqU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hq036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg8hrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8hrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8hrk36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8hr036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hsU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg8hsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8hs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8htE36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.source->isEmpty() and&#xA;self.type->isEmpty() and&#xA;self.parameters->isEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->isEmpty() and&#xA;self.question->isEmpty()&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined())->size()=1 )&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8htU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg8hw036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8ht036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8huU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8hu036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg8hx036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg8hvU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8hv036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8hwU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg8hw036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg8hxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg8hxU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg8hxk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg8hx036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg8hyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg8hyU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg8hyk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8hy036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg8hzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8hzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8hzk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8hz036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8h0U36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg8hy036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8h0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8h1E36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg8hy036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8h1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8h1036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg8h2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg8h2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8h2k36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8h2036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8h3U36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg8h1036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8h3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8h4E36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg8h1036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8h4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8h4036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg8h1036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8h5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8h5k36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg8h5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg8h6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg8h6U36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg8h6k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8h7E36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg8h5k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8h7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8h7036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg8h5k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8h8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8h8k36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg8h5k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8h8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8h9U36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg8h5k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8h9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8h-E36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg8h5k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8h-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg8h-036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg8h5k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg8h_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GEU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg8hq036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9GEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9GE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9GFE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GFk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg9GF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9GGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9GGU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9GGk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9GHE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GHk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg9GH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9GIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9GIU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9GIk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9GJE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GJk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg9GHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9GJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9GKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9GKU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GK036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg9GHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9GLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9GLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9GLk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GME36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg8h5k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9GMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg9GM036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_iP7-kBFSEeODGMc-klr1xw/127" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GNE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg9GOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9GNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9GNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9GN036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GOU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg9GOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9GO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9GPE36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9GPU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GP036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg9GQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9GQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9GQk36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.source->isEmpty() and&#xA;self.type->isEmpty() and&#xA;self.parameters->isEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->isEmpty() and&#xA;self.question->isEmpty()&#xA;&#xA;&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9GQ036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg9GUU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9GRU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9GR036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9GSU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg9GVU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9GS036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9GTU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9GT036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9GUU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg9GUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9GU036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg9GVE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9GVU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg9GVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9GV036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg9GWE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GWU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg9GWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9GW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9GXE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9GXU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GX036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg9GWU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9GYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GYk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg9GWU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9GY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GZU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg9GZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9GZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9GaE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9GaU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Ga036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg9GZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9GbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Gbk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg9GZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Gb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GcU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg9GZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Gck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GdE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg9GdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg9Gdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9Gd036EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9GeE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Gek36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg9GdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Ge036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GfU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg9GdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Gfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GgE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg9GdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9GgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Gg036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg9GdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9GhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Ghk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg9GdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Gh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GiU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg9GdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Gik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GjE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg9GOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9GjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9Gjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9Gj036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GkU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg9Gkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9Gk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9GlE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9GlU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9Gl036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GmU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg9Gmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9Gm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9GnE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9GnU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9Gn036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GoU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg9GmU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Gok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9Go036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9GpE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Gpk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg9GmU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Gp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9GqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9GqU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Gq036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg9GdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9GrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg9Grk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_RCGg8BFPEeODGMc-klr1xw/126" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Gr036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg9GtE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9GsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9GsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9Gsk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9GtE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg9GtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9Gtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9Gt036EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9GuE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Guk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg9Gu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9GvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9GvU36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9Gvk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg9GzE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9GwE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9Gwk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9GxE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg9G0E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9Gxk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9GyE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9Gyk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9GzE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg9GzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9Gzk36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg9Gz036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9G0E36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg9G0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9G0k36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg9G0036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9G1E36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg9G1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9G1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9G1036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9G2E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9G2k36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg9G1E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9G2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9G3U36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg9G1E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9G3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9G4E36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg9G4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9G4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9G4036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_ObjectNode.oclAsType(uml::Element)))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9G5E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9G5k36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg9G4E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9G5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9G6U36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg9G4E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9G6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9G7E36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg9G4E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9G7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9G7036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg9G8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg9G8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9G8k36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9G8036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9G9U36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg9G7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9G9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9G-E36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg9G7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9G-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9G-036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg9G7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9G_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9G_k36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg9G7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9G_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HAU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg9G7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9HAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HBE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg9G7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9HBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HB036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg9GtE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9HCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9HCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9HCk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HDE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg9HDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9HDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9HD036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9HEE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9HEk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HFE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg9HFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9HFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9HF036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9HGE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9HGk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HHE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg9HFE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9HHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9HHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9HH036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HIU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg9HFE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9HIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9HI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9HJE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HJk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg9G7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9HJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg9HKU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_JFByIBFOEeODGMc-klr1xw/125" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HKk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg9HL036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9HK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9HLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9HLU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HL036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg9HME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9HMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9HMk36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9HM036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HNU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg9HNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9HN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9HOE36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9HOU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg9HR036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9HO036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9HPU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9HP036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg9HS036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9HQU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9HQ036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9HRU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9HR036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg9HSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9HSU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg9HSk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9HS036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg9HTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9HTU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg9HTk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HT036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg9HUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9HUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9HUk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9HU036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HVU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg9HT036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9HVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HWE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg9HT036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9HWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HW036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg9HXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9HXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9HXk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;self.base_ObjectNode.ownedComment->select(comm| not comm.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined())->size() = 1&#xA;&#x9;&#x9;&#x9;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9HX036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HYU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg9HW036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9HYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HZE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg9HW036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9HZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HZ036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg9HW036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9HaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Hak36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg9Ha036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg9HbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9HbU36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9Hbk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HcE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg9Hak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9HcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Hc036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg9Hak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9HdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Hdk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg9Hak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Hd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HeU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg9Hak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Hek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HfE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg9Hak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9HfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Hf036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg9Hak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9HgE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Hgk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg9HL036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Hg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9HhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9HhU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Hh036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg9HiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9HiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9Hik36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9Hi036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9HjU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Hj036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg9HkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9HkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9Hkk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9Hk036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9HlU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Hl036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg9Hj036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9HmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9HmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9Hmk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HnE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg9Hj036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9HnU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9Hnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9Hn036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HoU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg9Hak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Hok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg9HpE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_ow7_sBFNEeODGMc-klr1xw/124" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HpU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg9Hqk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Hpk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9Hp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9HqE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Hqk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg9Hq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9HrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9HrU36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9Hrk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9HsE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg9HsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9Hsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9Hs036EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9HtE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg9Hwk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9Htk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9HuE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9Huk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg9Hxk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9HvE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9Hvk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9HwE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9Hwk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg9Hw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9HxE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg9HxU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9Hxk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg9Hx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9HyE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg9HyU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Hyk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg9Hy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9HzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9HzU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9Hzk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9H0E36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg9Hyk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9H0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9H0036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg9Hyk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9H1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9H1k36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg9H1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9H2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9H2U36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;not self.base_ObjectNode.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->isEmpty() &#x9;&#xA;&#x9;&#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9H2k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9H3E36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg9H1k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9H3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9H3036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg9H1k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9H4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9H4k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg9H1k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9H4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9H5U36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg9H5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg9H5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9H6E36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9H6U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9H6036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg9H5U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9H7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9H7k36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg9H5U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9H7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9H8U36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg9H5U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9H8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9H9E36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg9H5U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9H9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9H9036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg9H5U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9H-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9H-k36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg9H5U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9H-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9H_U36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg9Hqk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9H_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9H_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9IAE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IAk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg9IA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9IBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9IBU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9IBk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9ICE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9ICk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg9IC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9IDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9IDU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9IDk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9IEE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IEk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg9ICk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9IE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9IFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9IFU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IF036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg9ICk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9IGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9IGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9IGk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IHE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg9H5U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9IHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg9IH036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_MmNr0BFMEeODGMc-klr1xw/123" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IIE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg9IJU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9IIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9IIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9II036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IJU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg9IJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9IJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9IKE36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9IKU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IK036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg9ILE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9ILU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9ILk36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9IL036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg9IPU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9IMU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9IM036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9INU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg9IQU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9IN036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9IOU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9IO036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9IPU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg9IPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9IP036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg9IQE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9IQU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg9IQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9IQ036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg9IRE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IRU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg9IRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9IR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9ISE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9ISU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IS036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg9IRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9ITE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9ITk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg9IRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9IT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IUU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg9IUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9IU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9IVE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;self.base_ObjectNode.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->notEmpty()&#xA; &#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9IVU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IV036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg9IUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9IWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IWk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg9IUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9IW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IXU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg9IUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9IXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IYE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg9IYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg9IYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9IY036EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9IZE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IZk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg9IYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9IZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IaU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg9IYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Iak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IbE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg9IYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9IbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Ib036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg9IYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9IcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Ick36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg9IYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Ic036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IdU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg9IYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Idk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IeE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg9IJU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9IeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9Iek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9Ie036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IfU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg9Ifk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9If036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9IgE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9IgU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9Ig036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IhU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg9Ihk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9Ih036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9IiE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9IiU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9Ii036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IjU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg9IhU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Ijk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9Ij036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9IkE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Ikk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg9IhU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Ik036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9IlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9IlU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Il036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg9IYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9ImE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg9Imk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_wXnIEBFLEeODGMc-klr1xw/122" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Im036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg9IoE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9InE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9InU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9Ink36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IoE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg9IoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9Iok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9Io036EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9IpE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Ipk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg9Ip036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9IqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9IqU36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9Iqk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg9IuE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9IrE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9Irk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9IsE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg9IvE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9Isk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9ItE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9Itk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9IuE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg9IuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9Iuk36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg9Iu036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9IvE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg9IvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9Ivk36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg9Iv036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IwE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg9IwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9Iwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9Iw036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9IxE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9Ixk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg9IwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Ix036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IyU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg9IwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9Iyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9IzE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg9IzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9Izk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9Iz036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA;&#x9;&#x9;&#xA;&#x9;self.base_ObjectNode.ownedComment->notEmpty() and&#xA;&#x9;self.base_ObjectNode.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->notEmpty()&#xA; &#x9;&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9I0E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9I0k36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg9IzE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9I0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9I1U36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg9IzE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9I1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9I2E36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg9IzE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9I2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9I2036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg9I3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg9I3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9I3k36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9I3036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9I4U36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg9I2036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9I4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9I5E36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg9I2036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9I5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9I5036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg9I2036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9I6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9I6k36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg9I2036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9I6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9I7U36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg9I2036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9I7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9I8E36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg9I2036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9I8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9I8036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg9IoE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9I9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9I9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9I9k36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9I-E36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg9I-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9I-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9I-036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9I_E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9I_k36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9JAE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg9JAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9JAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9JA036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9JBE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9JBk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9JCE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg9JAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9JCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9JCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9JC036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9JDU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg9JAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9JDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9JD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9JEE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9JEk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg9I2036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9JE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg9JFU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_cM8lkBFLEeODGMc-klr1xw/121" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9JFk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg9JG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9JF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9JGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9JGU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9JG036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg9JHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9JHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9JHk36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9JH036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9JIU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg9JIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9JI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9JJE36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9JJU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg9JM036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9JJ036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9JKU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9JK036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg9JN036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9JLU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9JL036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9JMU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9JM036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg9JNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9JNU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg9JNk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9JN036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg9JOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9JOU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg9JOk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9JO036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg9JPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9JPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9JPk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9tIE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tIk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg9JO036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tJU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg9JO036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tKE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg9tKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9tKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9tK036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;&#xA;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() or &#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()  or&#xA;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()) then&#xA; &#x9;not self.base_ObjectNode.ownedComment.oclIsUndefined() and&#xA; &#x9;not self.base_ObjectNode.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::query').oclIsUndefined()&#xA; else&#xA; &#x9;true&#xA; endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9tLE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tLk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg9tKE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tMU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg9tKE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tNE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg9tKE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tN036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg9tOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg9tOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9tOk36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9tO036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tPU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg9tN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tQE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg9tN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tQ036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg9tN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tRk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg9tN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tSU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg9tN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tTE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg9tN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tT036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg9JG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9tUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9tUk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tVE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg9tVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9tVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9tV036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9tWE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9tWk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tXE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg9tXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9tXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9tX036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9tYE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9tYk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tZE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg9tXE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9tZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9tZ036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9taU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg9tXE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9ta036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9tbE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tbk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg9tN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg9tcU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_yqSKwBFKEeODGMc-klr1xw/120" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tck36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg9td036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9tdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9tdU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9td036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg9teE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9teU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9tek36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9te036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tfU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg9tfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9tf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9tgE36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9tgU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg9tj036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9tg036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9thU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9th036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg9tk036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9tiU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9ti036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9tjU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9tj036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg9tkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9tkU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg9tkk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9tk036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg9tlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9tlU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg9tlk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tl036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg9tmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9tmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9tmk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9tm036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tnU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg9tl036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9toE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg9tl036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9toU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9to036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg9tpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9tpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9tpk36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.qualifiedName() ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.qualifiedName() = 'CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.qualifiedName() ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() ) then&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9tp036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tqU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg9to036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9trE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg9to036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9trU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tr036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg9to036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tsk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg9ts036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg9ttE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9ttU36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9ttk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tuE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg9tsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tu036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg9tsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tvk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg9tsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9twU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg9tsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9twk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9txE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg9tsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9txU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tx036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg9tsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9tyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tyk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg9td036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9ty036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9tzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9tzU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9tz036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg9t0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9t0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9t0k36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9t0036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9t1U36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9t1036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg9t2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9t2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9t2k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9t2036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9t3U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9t3036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg9t1036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9t4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9t4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9t4k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9t5E36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg9t1036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9t5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9t5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9t5036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9t6U36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg9tsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9t6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg9t7E36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_LPFywBFKEeODGMc-klr1xw/119" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9t7U36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg9t8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9t7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9t7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9t8E36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9t8k36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg9t8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9t9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9t9U36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9t9k36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9t-E36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg9t-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9t-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9t-036EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9t_E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg9uCk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9t_k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9uAE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9uAk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg9uDk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9uBE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9uBk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9uCE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9uCk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg9uC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9uDE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg9uDU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9uDk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg9uD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9uEE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg9uEU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uEk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg9uE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9uFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9uFU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9uFk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uGE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg9uEk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uG036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg9uEk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uHk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg9uH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9uIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9uIU36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.qualifiedName() ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.qualifiedName() = 'CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.qualifiedName() ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA; if (self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() xor &#x9;&#xA;&#x9;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined() ) then&#xA; &#x9; not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;&#xA; else&#xA; &#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA; endif&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9uIk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uJE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg9uHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uJ036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg9uHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uKk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg9uHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uLU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg9uLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg9uL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9uME36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9uMU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uM036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg9uLU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uNk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg9uLU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uOU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg9uLU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uPE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg9uLU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uP036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg9uLU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uQk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg9uLU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uRU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg9t8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9uR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9uSE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uSk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg9uS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9uTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9uTU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9uTk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9uUE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uUk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg9uU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9uVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9uVU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9uVk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9uWE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uWk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg9uUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9uXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9uXU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uX036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg9uUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9uYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9uYk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uZE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg9uLU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg9uZ036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_3S94ABFIEeODGMc-klr1xw/118" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uaE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg9ubU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9uak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9ua036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9ubU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg9ubk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9ub036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9ucE36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9ucU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uc036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg9udE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9udU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9udk36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9ud036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg9uhU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9ueU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9ue036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9ufU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg9uiU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9uf036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9ugU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9ug036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9uhU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg9uhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9uh036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg9uiE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9uiU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg9uik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9ui036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg9ujE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9ujU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg9ujk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9uj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9ukE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9ukU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uk036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg9ujU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9ulE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9ulk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg9ujU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9ul036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9umU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg9umk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9um036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9unE36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.qualifiedName() ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.qualifiedName() = 'CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.qualifiedName() ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;(self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() xor &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined())  xor &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9unU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9un036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg9umU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uok36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg9umU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9upU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg9umU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9upk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uqE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg9uqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg9uqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9uq036EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9urE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9urk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg9uqE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9ur036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9usU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg9uqE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9usk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9utE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg9uqE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9utU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9ut036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg9uqE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uuk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg9uqE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uvU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg9uqE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uwE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg9ubU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9uwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9uwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9uw036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uxU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg9uxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9ux036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9uyE36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9uyU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9uy036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9uzU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg9uzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9uz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9u0E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9u0U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9u0036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9u1U36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg9uzU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9u1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9u1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9u2E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9u2k36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg9uzU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9u2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9u3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9u3U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9u3036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg9uqE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9u4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg9u4k36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_ua7gUBFIEeODGMc-klr1xw/117" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9u4036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg9u6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9u5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9u5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9u5k36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9u6E36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg9u6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9u6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9u6036EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9u7E36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9u7k36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg9u7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9u8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9u8U36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9u8k36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg9vAE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9u9E36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9u9k36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9u-E36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg9vBE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9u-k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9u_E36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9u_k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9vAE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg9vAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9vAk36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg9vA036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9vBE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg9vBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9vBk36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg9vB036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vCE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg9vCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9vCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9vC036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9vDE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vDk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg9vCE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vEU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg9vCE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vFE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg9vFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9vFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9vF036EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.qualifiedName() ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.qualifiedName() = 'CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.qualifiedName() ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() xor &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  xor &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;&#xA;else&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  and &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#xA;&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9vGE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vGk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg9vFE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vHU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg9vFE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vIE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg9vFE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vI036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg9vJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg9vJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9vJk36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9vJ036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vKU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg9vI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vLE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg9vI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vL036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg9vI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vMk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg9vI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vNU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg9vI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vOE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg9vI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vO036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg9u6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9vPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9vPk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vQE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg9vQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9vQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9vQ036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9vRE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9vRk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vSE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg9vSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9vSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9vS036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9vTE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9vTk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vUE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg9vSE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9vUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9vU036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vVU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg9vSE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9vV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9vWE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vWk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg9vI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg9vXU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_mB5_4BFIEeODGMc-klr1xw/116" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vXk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg9vY036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9vYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9vYU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vY036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg9vZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9vZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9vZk36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9vZ036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vaU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg9vak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9va036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9vbE36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9vbU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg9ve036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9vb036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9vcU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9vc036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg9vf036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9vdU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9vd036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9veU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9ve036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg9vfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9vfU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg9vfk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9vf036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg9vgE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9vgU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg9vgk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vg036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg9vhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9vhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9vhk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9vh036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9viU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg9vg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vjE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg9vg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vj036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg9vkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9vkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9vkk36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.qualifiedName() ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.qualifiedName() = 'CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.qualifiedName() ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent').oclIsUndefined() xor &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw').oclIsUndefined()  xor &#x9;&#xA;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord').oclIsUndefined()&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9vk036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vlU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg9vj036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vmE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg9vj036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vm036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg9vj036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vnE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vnk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg9vn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg9voE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9voU36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9vok36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vpE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg9vnk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vp036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg9vnk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vqk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg9vnk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vrU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg9vnk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vsE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg9vnk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vs036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg9vnk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vtk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg9vY036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9vuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9vuU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vu036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg9vvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9vvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9vvk36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9vv036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9vwU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vw036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg9vxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9vxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9vxk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9vx036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9vyU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9vy036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg9vw036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9vzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9vzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9vzk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9v0E36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg9vw036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9v0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9v0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9v0036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9v1U36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg9vnk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9v1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg9v2E36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_MbZfwBFIEeODGMc-klr1xw/115" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9v2U36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg9v3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9v2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9v2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9v3E36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9v3k36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg9v3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9v4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9v4U36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9v4k36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9v5E36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg9v5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9v5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9v5036EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9v6E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg9v9k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9v6k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9v7E36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9v7k36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg9v-k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9v8E36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9v8k36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9v9E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9v9k36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg9v9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9v-E36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg9v-U36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9v-k36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg9v-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9v_E36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg9v_U36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9v_k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg9v_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9wAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9wAU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9wAk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wBE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg9v_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9wBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wB036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg9v_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9wCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wCk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg9wC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9wDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9wDU36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.qualifiedName() ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.qualifiedName() = 'CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.qualifiedName() ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9wDk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wEE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg9wCk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9wEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wE036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg9wCk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9wFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wFk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg9wCk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9wF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9wGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9wGU36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;false&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wG036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg9wHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg9wHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9wHk36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9wH036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wIU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg9wG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9wIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wJE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg9wG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9wJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wJ036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg9wG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9wKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wKk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg9wG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9wK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wLU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg9wG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9wLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wME36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg9wG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9wMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wM036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg9v3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9wNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9wNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9wNk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wOE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg9wOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9wOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9wO036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9wPE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9wPk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wQE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg9wQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9wQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9wQ036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9wRE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9wRk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wSE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg9wQE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9wSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9wSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9wS036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wTU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg9wQE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9wTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9wT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9wUE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wUk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg9wG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9wU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg9wVU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_4J4HUBFHEeODGMc-klr1xw/114" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wVk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg9wW036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg9wV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9wWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9wWU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wW036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg9wXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9wXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9wXk36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9wX036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9wYU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg9wYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9wY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9wZE36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9wZU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg9wc036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9wZ036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9waU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9wa036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg9wd036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg9wbU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9wb036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg9wcU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9wc036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg9wdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9wdU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg9wdk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg9wd036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg9weE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg9weU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg9wek36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg9we036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg9wfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg9wfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg9wfk36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-UME36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UMk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg9we036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-UM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UNU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg9we036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-UNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UOE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg-UOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-UOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-UO036EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-UPE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UPk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg-UOE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-UP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UQU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg-UOE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-UQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-URE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg-UOE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-URU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-URk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-UR036EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;false&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-USU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg-USk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg-US036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-UTE36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-UTU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UT036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg-USU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-UUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UUk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg-USU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-UU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UVU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg-USU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-UVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UWE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg-USU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-UWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UW036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg-USU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-UXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UXk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg-USU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-UX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UYU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg9wW036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-UYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-UY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-UZE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UZk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg-UZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-UaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-UaU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-Uak36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-UbE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Ubk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg-Ub036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-UcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-UcU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-Uck36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-UdE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Udk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg-Ubk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-Ud036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-UeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-UeU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Ue036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg-Ubk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-UfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-UfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-Ufk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UgE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg-USU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-UgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg-Ug036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_sUP9IBFHEeODGMc-klr1xw/113" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UhE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg-UiU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-UhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-Uhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-Uh036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UiU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg-Uik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-Ui036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-UjE36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-UjU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Uj036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg-UkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-UkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-Ukk36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-Uk036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg-UoU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-UlU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-Ul036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-UmU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg-UpU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-Um036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-UnU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-Un036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-UoU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg-Uok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-Uo036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg-UpE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-UpU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg-Upk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-Up036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg-UqE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UqU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg-Uqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-Uq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-UrE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-UrU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Ur036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg-UqU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-UsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Usk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg-UqU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-Us036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UtU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg-Utk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-Ut036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-UuE36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-UuU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Uu036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg-UtU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-UvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Uvk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg-UtU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-Uv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UwU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg-UtU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-Uwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-Uw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-UxE36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Uxk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg-Ux036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg-UyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-UyU36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-Uyk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-UzE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg-Uxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-UzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Uz036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg-Uxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-U0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-U0k36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg-Uxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-U0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-U1U36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg-Uxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-U1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-U2E36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg-Uxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-U2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-U2036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg-Uxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-U3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-U3k36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg-UiU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-U3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-U4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-U4U36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-U4036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg-U5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-U5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-U5k36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-U5036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-U6U36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-U6036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg-U7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-U7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-U7k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-U7036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-U8U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-U8036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg-U6036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-U9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-U9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-U9k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-U-E36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg-U6036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-U-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-U-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-U-036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-U_U36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg-Uxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-U_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg-VAE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_rAF1wBDHEeOsaJcHDk5fxQ/112" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VAU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg-VBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-VA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-VBE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VBk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg-VB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-VCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-VCU36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-VCk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VDE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg-VDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-VDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-VD036EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-VEE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg-VHk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-VEk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-VFE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-VFk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg-VIk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-VGE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-VGk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-VHE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-VHk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg-VH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-VIE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg-VIU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-VIk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg-VI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-VJE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg-VJU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VJk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg-VJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-VKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-VKU36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-VKk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VLE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg-VJk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VL036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg-VJk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VMk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg-VM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-VNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-VNU36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-VNk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VOE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg-VMk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VO036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg-VMk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VPk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg-VMk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VQU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg-VQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg-VQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-VRE36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-VRU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VR036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg-VQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VSk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg-VQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VTU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg-VQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VUE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg-VQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VU036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg-VQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VVk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg-VQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VWU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg-VBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-VW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-VXE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VXk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg-VX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-VYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-VYU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-VYk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-VZE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VZk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg-VZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-VaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-VaU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty() xor self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-Vak36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-VbE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Vbk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg-VZk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-Vb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-VcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-VcU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Vc036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg-VZk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-VdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-Vdk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VeE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg-VQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg-Ve036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_0fTXoBDGEeOsaJcHDk5fxQ/111" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VfE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg-VgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-Vfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-Vf036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VgU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg-Vgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-Vg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-VhE36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-VhU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Vh036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg-ViE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-ViU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-Vik36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-Vi036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg-VmU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-VjU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-Vj036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-VkU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg-VnU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-Vk036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-VlU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-Vl036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-VmU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg-Vmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-Vm036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg-VnE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-VnU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg-Vnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-Vn036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg-VoE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VoU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg-Vok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-Vo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-VpE36EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsKindOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-VpU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Vp036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg-VoU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Vqk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg-VoU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-Vq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VrU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg-Vrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-Vr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-VsE36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-VsU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Vs036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg-VrU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Vtk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg-VrU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-Vt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VuU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg-VrU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-Vuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VvE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg-VvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg-Vvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-Vv036EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-VwE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Vwk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg-VvE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-Vw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VxU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg-VvE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-Vxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-VyE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg-VvE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Vy036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg-VvE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-VzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Vzk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg-VvE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-Vz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-V0U36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg-VvE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-V0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-V1E36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg-VgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-V1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-V1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-V1036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-V2U36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg-V2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-V2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-V3E36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-V3U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-V3036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-V4U36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg-V4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-V4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-V5E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name='CTIEActivityDiagramProfile::constraint' or stereotype.name= 'CTIEActivityDiagramProfile::formula')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-V5U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-V5036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-V6U36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg-V4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-V6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-V6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-V7E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-V7k36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg-V4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-V7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-V8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-V8U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-V8036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg-VvE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-V9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg-V9k36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_qvVSYBDGEeOsaJcHDk5fxQ/110" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-V9036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg-V_E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-V-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-V-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-V-k36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-V_E36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg-V_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-V_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-V_036EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-WAE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WAk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg-WA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-WBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-WBU36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-WBk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg-WFE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-WCE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-WCk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-WDE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg-WGE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-WDk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-WEE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-WEk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-WFE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg-WFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-WFk36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg-WF036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-WGE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg-WGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-WGk36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg-WG036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WHE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg-WHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-WHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-WH036EeSS5u8wdxTIGg" key="documentation" value="if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() xor self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;else&#xA;&#x9;self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() and self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::out').oclIsUndefined()&#xA;endif&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-WIE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WIk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg-WHE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WJU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg-WHE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WKE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg-WKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-WKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-WK036EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-WLE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WLk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg-WKE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WMU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg-WKE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WNE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg-WKE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WN036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg-WOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg-WOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-WOk36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-WO036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WPU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg-WN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WQE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg-WN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WQ036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg-WN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WRk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg-WN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WSU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg-WN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WTE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg-WN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WT036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg-V_E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-WUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-WUk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WVE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg-WVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-WVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-WV036EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-WWE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-WWk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WXE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg-WXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-WXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-WX036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name='CTIEActivityDiagramProfile::constraint' or stereotype.name= 'CTIEActivityDiagramProfile::formula')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-WYE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-WYk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WZE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg-WXE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-WZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-WZ036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WaU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg-WXE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-Wak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-Wa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-WbE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Wbk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg-WN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-Wb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg-WcU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_MZpGUBDGEeOsaJcHDk5fxQ/109" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Wck36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg-Wd036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-Wc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-WdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-WdU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Wd036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg-WeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-WeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-Wek36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-We036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WfU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg-Wfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-Wf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-WgE36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-WgU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg-Wj036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-Wg036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-WhU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-Wh036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg-Wk036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-WiU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-Wi036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-WjU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-Wj036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg-WkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-WkU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg-Wkk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-Wk036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg-WlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-WlU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg-Wlk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Wl036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg-WmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-WmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-Wmk36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-Wm036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WnU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg-Wl036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-Wnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WoE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg-Wl036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Wo036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg-WpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-WpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-Wpk36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-Wp036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WqU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg-Wo036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-Wqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WrE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg-Wo036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Wr036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg-Wo036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Wsk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg-Ws036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg-WtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-WtU36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-Wtk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WuE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg-Wsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Wu036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg-Wsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Wvk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg-Wsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-Wv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WwU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg-Wsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-Wwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-WxE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg-Wsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Wx036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg-Wsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-WyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Wyk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg-Wd036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-Wy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-WzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-WzU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-Wz036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg-W0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-W0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-W0k36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getAppliedStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-W0036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-W1U36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-W1036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg-W2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-W2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-W2k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name='CTIEActivityDiagramProfile::constraint' or stereotype.name= 'CTIEActivityDiagramProfile::formula')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-W2036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-W3U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-W3036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg-W1036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-W4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-W4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-W4k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-W5E36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg-W1036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-W5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-W5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-W5036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-W6U36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg-Wsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-W6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg-W7E36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_6YIosBDFEeOsaJcHDk5fxQ/108" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-W7U36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg-W8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-W7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-W7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-W8E36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-W8k36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg-W8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-W9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-W9U36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-W9k36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-W-E36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg-W-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-W-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-W-036EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-W_E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg-XCk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-W_k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-XAE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-XAk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg-XDk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-XBE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-XBk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-XCE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-XCk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg-XC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-XDE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg-XDU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-XDk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg-XD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-XEE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg-XEU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-XEk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg-XE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-XFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-XFU36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-XFk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-XGE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg-XEk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-XGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-XG036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg-XEk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-XHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-XHk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg-XH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-XIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-XIU36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-XIk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-XJE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg-XHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-XJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-XJ036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg-XHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-XKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-XKk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg-XHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-XK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-XLU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg-XLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg-XL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-7QE36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-7QU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7Q036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg-XLU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7RE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7Rk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg-XLU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7R036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7SU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg-XLU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7Sk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7TE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg-XLU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7TU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7T036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg-XLU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7UE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7Uk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg-XLU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7U036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7VU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg-W8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7Vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-7V036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-7WE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7Wk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg-7W036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-7XE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-7XU36EeSS5u8wdxTIGg" key="documentation" value="uml::ActivityParameterNode.allInstances()->select(ap| not ap.getApplicableStereotype('CTIEActivityDiagramProfile::context').oclIsUndefined())->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-7Xk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-7YE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7Yk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg-7Y036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-7ZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-7ZU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name='CTIEActivityDiagramProfile::constraint' or stereotype.name= 'CTIEActivityDiagramProfile::formula')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-7Zk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-7aE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7ak36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg-7Yk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7a036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-7bE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-7bU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7b036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg-7Yk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7cE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-7cU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-7ck36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7dE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg-XLU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7dU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg-7d036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_epSjEBDFEeOsaJcHDk5fxQ/107" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7eE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg-7fU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7eU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-7ek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-7e036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7fU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg-7fk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-7f036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-7gE36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-7gU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7g036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg-7hE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-7hU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-7hk36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-7h036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg-7lU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-7iU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-7i036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-7jU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg-7mU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-7j036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-7kU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-7k036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-7lU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg-7lk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-7l036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg-7mE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-7mU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg-7mk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-7m036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg-7nE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7nU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg-7nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-7n036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-7oE36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-7oU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7o036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg-7nU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7pE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7pk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg-7nU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7p036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7qU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg-7qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-7q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-7rE36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-7rU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7r036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg-7qU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7sE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7sk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg-7qU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7s036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7tU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg-7qU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7tk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7uE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg-7uU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg-7uk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-7u036EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-7vE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7vk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg-7uE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7v036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7wU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg-7uE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7wk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7xE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg-7uE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7xU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7x036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg-7uE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7yE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7yk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg-7uE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7y036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7zU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg-7uE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-7zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-70E36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg-7fU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-70U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-70k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-70036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-71U36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg-71k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-71036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-72E36EeSS5u8wdxTIGg" key="documentation" value="uml::Stereotype.allInstances()->select(stereotype|stereotype.getLabel() ='CTIEActivityDiagramProfile::context' )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-72U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-72036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-73U36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg-73k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-73036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-74E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name='CTIEActivityDiagramProfile::constraint' or stereotype.name= 'CTIEActivityDiagramProfile::formula')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-74U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-74036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-75U36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg-73U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-75k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-75036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-76E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-76k36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg-73U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-76036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-77E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-77U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-77036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg-7uE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-78E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg-78k36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_pC_-UBDEEeOsaJcHDk5fxQ/106" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-78036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg-7-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-79E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-79U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-79k36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7-E36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg-7-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-7-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-7-036EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-7_E36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-7_k36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg-7_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-8AE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-8AU36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-8Ak36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg-8EE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-8BE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-8Bk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-8CE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg-8FE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-8Ck36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-8DE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-8Dk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-8EE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg-8EU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-8Ek36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg-8E036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-8FE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg-8FU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-8Fk36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg-8F036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8GE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg-8GU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-8Gk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-8G036EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-8HE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8Hk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg-8GE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8H036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8IU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg-8GE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8Ik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8JE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg-8JU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-8Jk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-8J036EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-8KE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8Kk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg-8JE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8K036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8LU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg-8JE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8Lk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8ME36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg-8JE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8MU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8M036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg-8NE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg-8NU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-8Nk36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-8N036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8OU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg-8M036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8Ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8PE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg-8M036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8PU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8P036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg-8M036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8QE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8Qk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg-8M036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8Q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8RU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg-8M036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8Rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8SE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg-8M036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8SU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8S036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg-7-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8TE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-8TU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-8Tk36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8UE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg-8UU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-8Uk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-8U036EeSS5u8wdxTIGg" key="documentation" value="uml::Stereotype.allInstances()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context' )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-8VE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-8Vk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8WE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg-8WU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-8Wk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-8W036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name='CTIEActivityDiagramProfile::constraint' or stereotype.name= 'CTIEActivityDiagramProfile::formula')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-8XE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-8Xk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8YE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg-8WE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8YU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-8Yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-8Y036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8ZU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg-8WE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8Zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-8Z036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-8aE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8ak36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg-8M036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8a036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg-8bU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_kD7cQBDEEeOsaJcHDk5fxQ/105" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8bk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg-8c036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8b036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-8cE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-8cU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8c036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg-8dE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-8dU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-8dk36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-8d036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8eU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg-8ek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-8e036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-8fE36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-8fU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg-8i036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-8f036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-8gU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-8g036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg-8j036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-8hU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-8h036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-8iU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-8i036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg-8jE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-8jU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg-8jk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-8j036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg-8kE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-8kU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg-8kk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8k036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg-8lE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-8lU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-8lk36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-8l036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8mU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg-8k036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8mk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8nE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg-8k036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8nU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8n036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg-8oE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-8oU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-8ok36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-8o036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8pU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg-8n036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8qE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg-8n036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8qU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8q036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg-8n036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8rE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8rk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg-8r036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg-8sE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-8sU36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-8sk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8tE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg-8rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8tU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8t036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg-8rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8uE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8uk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg-8rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8u036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8vU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg-8rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8wE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg-8rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8wU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8w036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg-8rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8xE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8xk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg-8c036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-8x036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-8yE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-8yU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-8y036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg-8zE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-8zU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-8zk36EeSS5u8wdxTIGg" key="documentation" value="true&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-8z036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-80U36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-80036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg-81E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-81U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-81k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name='CTIEActivityDiagramProfile::constraint' or stereotype.name= 'CTIEActivityDiagramProfile::formula')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-81036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-82U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-82036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg-80036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-83E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-83U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-83k36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-84E36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg-80036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-84U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-84k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-84036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-85U36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg-8rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-85k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg-86E36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_sz6goBDDEeOsaJcHDk5fxQ/104" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-86U36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg-87k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-86k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-86036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-87E36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-87k36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg-87036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-88E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-88U36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-88k36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-89E36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg-89U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-89k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-89036EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-8-E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg-9Bk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-8-k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-8_E36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-8_k36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg-9Ck36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-9AE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-9Ak36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-9BE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-9Bk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg-9B036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-9CE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg-9CU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-9Ck36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg-9C036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-9DE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg-9DU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9Dk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg-9D036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-9EE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-9EU36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-9Ek36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9FE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg-9Dk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9FU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9F036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg-9Dk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9GE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9Gk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg-9G036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-9HE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-9HU36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-9Hk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9IE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg-9Gk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9IU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9I036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg-9Gk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9JE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9Jk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg-9Gk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9J036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9KU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg-9Kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg-9K036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-9LE36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-9LU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9L036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg-9KU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9ME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9Mk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg-9KU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9M036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9NU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg-9KU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9Nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9OE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg-9KU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9OU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9O036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg-9KU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9PE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9Pk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg-9KU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9P036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9QU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg-87k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9Qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-9Q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-9RE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9Rk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg-9R036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-9SE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-9SU36EeSS5u8wdxTIGg" key="documentation" value="uml::Stereotype.allInstances()->select(stereotype|stereotype.qualifiedName ='CTIEActivityDiagramProfile::context' )->size() = 1&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-9Sk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-9TE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9Tk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg-9T036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-9UE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-9UU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name='CTIEActivityDiagramProfile::constraint' or stereotype.name= 'CTIEActivityDiagramProfile::formula')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-9Uk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-9VE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9Vk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg-9Tk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9V036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-9WE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-9WU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9W036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg-9Tk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9XE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-9XU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-9Xk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9YE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg-9KU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9YU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg-9Y036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_UvvV8BDDEeOsaJcHDk5fxQ/103" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9ZE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg-9aU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9ZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-9Zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-9Z036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9aU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg-9ak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-9a036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-9bE36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-9bU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9b036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg-9cE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-9cU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-9ck36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-9c036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg-9gU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-9dU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-9d036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-9eU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg-9hU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-9e036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-9fU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-9f036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-9gU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg-9gk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-9g036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg-9hE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-9hU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg-9hk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-9h036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg-9iE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9iU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg-9ik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-9i036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-9jE36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-9jU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9j036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg-9iU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9kE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9kk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg-9iU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9k036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9lU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg-9lk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-9l036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-9mE36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-9mU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9m036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg-9lU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9nE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9nk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg-9lU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9n036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9oU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg-9lU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9pE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg-9pU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg-9pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-9p036EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-9qE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9qk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg-9pE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9rU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg-9pE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9sE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg-9pE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9sU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9s036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg-9pE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9tE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9tk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg-9pE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9t036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9uU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg-9pE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9uk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9vE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg-9aU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-9vU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-9vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-9v036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9wU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg-9wk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-9w036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-9xE36EeSS5u8wdxTIGg" key="documentation" value="let stereotype : Stereotype = self.base_ActivityParameterNode.getAppliedStereotype('CTIEActivityDiagramProfile::context') in&#xA;&#xA;not stereotype.oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-9xU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-9x036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-9yU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg-9yk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-9y036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-9zE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name='CTIEActivityDiagramProfile::constraint' or stereotype.name= 'CTIEActivityDiagramProfile::formula')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-9zU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-9z036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-90U36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg-9yU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-90k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-90036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-91E36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-91k36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg-9yU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-91036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-92E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-92U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-92036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg-9pE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-93E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg-93k36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_mJcLUBCEEeOsaJcHDk5fxQ/102" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-93036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg-95E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg-94E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-94U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-94k36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-95E36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg-95U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-95k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-95036EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-96E36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg-96k36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg-96036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg-97E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg-97U36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-97k36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg-9_E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-98E36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-98k36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-99E36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg--AE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg-99k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-9-E36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg-9-k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg-9_E36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg-9_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg-9_k36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg-9_036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg--AE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg--AU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg--Ak36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg--A036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--BE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg--BU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg--Bk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg--B036EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg--CE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--Ck36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg--BE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg--C036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--DU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg--BE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg--Dk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--EE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg--EU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg--Ek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg--E036EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg--FE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--Fk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg--EE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg--F036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--GU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg--EE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg--Gk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--HE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg--EE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg--HU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--H036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg--IE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg--IU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg--Ik36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg--I036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--JU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg--H036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg--Jk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--KE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg--H036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg--KU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--K036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg--H036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg--LE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--Lk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg--H036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg--L036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--MU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg--H036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg--Mk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--NE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg--H036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg--NU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--N036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg-95E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg--OE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg--OU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg--Ok36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--PE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg--PU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg--Pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg--P036EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg--QE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg--Qk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--RE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg--RU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg--Rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg--R036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name='CTIEActivityDiagramProfile::constraint' or stereotype.name= 'CTIEActivityDiagramProfile::formula')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg--SE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg--Sk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--TE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg--RE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg--TU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg--Tk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg--T036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--UU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg--RE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg--Uk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg--U036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg--VE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--Vk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg--H036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg--V036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg--WU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_K_kNQBB_EeOsaJcHDk5fxQ/101" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--Wk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg--X036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg--W036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg--XE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg--XU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg--X036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg--YE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg--YU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg--Yk36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_iUE36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_iUk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg_iU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_iVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_iVU36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_iVk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg_iZE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_iWE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_iWk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_iXE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg_iaE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_iXk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_iYE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_iYk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg_iZE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg_iZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg_iZk36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg_iZ036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg_iaE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg_iaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg_iak36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg_ia036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_ibE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg_ibU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_ibk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_ib036EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_icE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_ick36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg_ibE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_ic036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_idU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg_ibE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_idk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_ieE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg_ieU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_iek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_ie036EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_ifE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_ifk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg_ieE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_if036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_igU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg_ieE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_igk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_ihE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg_ieE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_ihU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_ih036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg_iiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg_iiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_iik36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_ii036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_ijU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg_ih036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_ijk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_ikE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg_ih036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_ikU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_ik036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg_ih036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_ilE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_ilk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg_ih036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_il036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_imU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg_ih036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_imk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_inE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg_ih036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_inU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_in036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg--X036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_ioE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_ioU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_iok36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_ipE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg_ipU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_ipk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_ip036EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_iqE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_iqk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_irE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg_irU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_irk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_ir036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name='CTIEActivityDiagramProfile::constraint' or stereotype.name= 'CTIEActivityDiagramProfile::formula')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_isE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_isk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_itE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg_irE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_itU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_itk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_it036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_iuU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg_irE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_iuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_iu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_ivE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_ivk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg_ih036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_iv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg_iwU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_DrY1ABB_EeOsaJcHDk5fxQ/100" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_iwk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg_ix036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_iw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_ixE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_ixU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_ix036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg_iyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_iyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_iyk36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_iy036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_izU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg_izk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_iz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_i0E36EeSS5u8wdxTIGg" key="documentation" value="self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;implies&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()=0&#xA; &#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;implies&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()=1 &#xA;&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_i0U36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg_i3036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_i0036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_i1U36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_i1036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg_i4036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_i2U36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_i2036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_i3U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg_i3036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg_i4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg_i4U36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg_i4k36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg_i4036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg_i5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg_i5U36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg_i5k36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_i5036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg_i6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_i6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_i6k36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_i6036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_i7U36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg_i5036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_i7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_i8E36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg_i5036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_i8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_i8036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg_i9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_i9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_i9k36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_i9036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_i-U36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg_i8036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_i-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_i_E36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg_i8036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_i_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_i_036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg_i8036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jAk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg_jA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg_jBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_jBU36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_jBk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jCE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg_jAk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jC036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg_jAk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jDk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg_jAk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jEU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg_jAk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jFE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg_jAk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jF036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg_jAk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jGk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg_ix036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_jHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_jHU36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jH036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg_jIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_jIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_jIk36EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_jI036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_jJU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jJ036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg_jKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_jKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_jKk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name='CTIEActivityDiagramProfile::constraint' or stereotype.name= 'CTIEActivityDiagramProfile::formula')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_jK036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_jLU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jL036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg_jJ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_jMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_jMk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jNE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg_jJ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_jNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_jN036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jOU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg_jAk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg_jPE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_2PVfkBB-EeOsaJcHDk5fxQ/99" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jPU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg_jQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_jP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_jQE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jQk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg_jQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_jRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_jRU36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_jRk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jSE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg_jSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_jSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_jS036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()>0 &#xA;implies&#xA;&#xA;self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_jTE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg_jWk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_jTk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_jUE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_jUk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg_jXk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_jVE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_jVk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_jWE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg_jWk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg_jW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg_jXE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg_jXU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg_jXk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg_jX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg_jYE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg_jYU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jYk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg_jY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_jZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_jZU36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_jZk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jaE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg_jYk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_ja036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg_jYk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jbk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg_jb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_jcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_jcU36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_jck36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jdE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg_jbk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jd036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg_jbk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jek36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg_jbk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_je036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jfU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg_jfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg_jf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_jgE36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_jgU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jg036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg_jfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jhk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg_jfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jiU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg_jfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jjE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg_jfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jj036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg_jfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jkk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg_jfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jlU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg_jQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_jl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_jmE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jmk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg_jm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_jnE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_jnU36EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_jnk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_joE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jok36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg_jo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_jpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_jpU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name='CTIEActivityDiagramProfile::constraint' or stereotype.name= 'CTIEActivityDiagramProfile::formula')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_jpk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_jqE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jqk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg_jok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_jrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_jrU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jr036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg_jok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_jsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_jsk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jtE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg_jfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_jtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg_jt036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_1K8DUBB-EeOsaJcHDk5fxQ/98" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_juE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg_jvU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_juU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_juk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_ju036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jvU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg_jvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_jv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_jwE36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_jwU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_jw036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg_jxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_jxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_jxk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()>0 &#xA;implies&#xA;&#xA;self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_jx036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg_j1U36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_jyU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_jy036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_jzU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg_j2U36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_jz036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_j0U36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_j0036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg_j1U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg_j1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg_j1036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg_j2E36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg_j2U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg_j2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg_j2036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg_j3E36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_j3U36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg_j3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_j3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_j4E36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_j4U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_j4036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg_j3U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_j5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_j5k36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg_j3U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_j5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_j6U36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg_j6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_j6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_j7E36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_j7U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_j7036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg_j6U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_j8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_j8k36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg_j6U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_j8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_j9U36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg_j6U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_j9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_j-E36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg_j-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg_j-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_j-036EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_j_E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_j_k36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg_j-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_j_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kAU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg_j-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kBE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg_j-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kB036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg_j-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kCk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg_j-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kDU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg_j-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kEE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg_jvU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_kEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_kE036EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kFU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg_kFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_kF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_kGE36EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_kGU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_kG036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kHU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg_kHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_kH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_kIE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name='CTIEActivityDiagramProfile::constraint' or stereotype.name= 'CTIEActivityDiagramProfile::formula')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_kIU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_kI036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kJU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg_kHU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_kJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_kKE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kKk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg_kHU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_kLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_kLU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kL036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg_j-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg_kMk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_tkTpIBB-EeOsaJcHDk5fxQ/97" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kM036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg_kNk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kNk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg_kN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_kOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_kOU36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_kOk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kPE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg_kPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_kPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_kP036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()>0 &#xA;implies&#xA;&#xA;self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_kQE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg_kTk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_kQk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_kRE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_kRk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg_kUk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_kSE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_kSk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_kTE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg_kTk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg_kT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg_kUE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg_kUU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg_kUk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg_kU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg_kVE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg_kVU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kVk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg_kV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_kWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_kWU36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_kWk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kXE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg_kVk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kX036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg_kVk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kYk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg_kY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_kZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_kZU36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_kZk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kaE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg_kYk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_ka036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg_kYk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kbk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg_kYk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kcU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg_kck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg_kc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_kdE36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_kdU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kd036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg_kcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_keE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kek36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg_kcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_ke036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kfU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg_kcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kgE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg_kcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kg036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg_kcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_khE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_khk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg_kcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kiU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg_kNk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_ki036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_kjE36EeSS5u8wdxTIGg" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kjk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg_kj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_kkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_kkU36EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_kkk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_klE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_klk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg_kl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_kmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_kmU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name='CTIEActivityDiagramProfile::constraint' or stereotype.name= 'CTIEActivityDiagramProfile::formula')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_kmk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_knE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_knk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg_klk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_koE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_koU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_ko036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg_klk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_kpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_kpk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kqE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg_kcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_kqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg_kq036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_2bsiAA_5EeOZF-Flwvdt4A/96" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_krE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg_kr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_krU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kr036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg_ksE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_ksU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_ksk36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_ks036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_ktU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg_ktk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_kt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_kuE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()>0 &#xA;implies&#xA;&#xA;self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_kuU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg_kx036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_ku036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_kvU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_kv036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg_ky036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_kwU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_kw036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_kxU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg_kx036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg_kyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg_kyU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg_kyk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg_ky036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg_kzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg_kzU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg_kzk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_kz036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg_k0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_k0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_k0k36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_k0036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_k1U36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg_kz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_k1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_k2E36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg_kz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_k2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_k2036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg_k3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_k3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_k3k36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_k3036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_k4U36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg_k2036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_k4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_k5E36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg_k2036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_k5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_k5036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg_k2036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_k6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_k6k36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg_k6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg_k7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_k7U36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_k7k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_k8E36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg_k6k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_k8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_k8036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg_k6k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_k9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_k9k36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg_k6k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_k9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_k-U36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg_k6k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_k-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_k_E36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg_k6k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_k_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_k_036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg_k6k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_lAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lAk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg_kr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_lA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lBU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg_lBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_lB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_lCE36EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_lCU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_lC036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lDU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg_lDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_lD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_lEE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name='CTIEActivityDiagramProfile::constraint' or stereotype.name= 'CTIEActivityDiagramProfile::formula')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_lEU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_lE036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lFU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg_lDU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_lFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_lF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_lGE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lGk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg_lDU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_lG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_lHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_lHU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lH036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg_k6k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_lIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg_lIk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_zExCcA_5EeOZF-Flwvdt4A/95" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lI036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg_lJk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_lJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lJk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg_lJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_lKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_lKU36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_lKk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lLE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg_lLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_lLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_lL036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()>0 &#xA;implies&#xA;&#xA;self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_lME36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg_lPk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_lMk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_lNE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_lNk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg_lQk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_lOE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_lOk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_lPE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg_lPk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg_lP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg_lQE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg_lQU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg_lQk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg_lQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg_lRE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg_lRU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lRk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xg_lR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_lSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_lSU36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_lSk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lTE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xg_lRk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_lTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lT036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xg_lRk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_lUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lUk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xg_lU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_lVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_lVU36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_lVk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lWE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xg_lUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_lWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lW036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xg_lUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_lXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lXk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xg_lUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_lX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lYU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xg_lYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xg_lY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_lZE36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_lZU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lZ036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xg_lYU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_laE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lak36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xg_lYU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_la036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lbU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xg_lYU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_lbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lcE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xg_lYU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_lcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lc036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xg_lYU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_ldE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_ldk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xg_lYU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_ld036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_leU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg_lJk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_lek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lfE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xg_lfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_lfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_lf036EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_lgE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_lgk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lhE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xg_lhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_lhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_lh036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name='CTIEActivityDiagramProfile::constraint' or stereotype.name= 'CTIEActivityDiagramProfile::formula')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_liE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_lik36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_ljE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xg_lhE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_ljU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_ljk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_lj036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->notEmpty()&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lkU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xg_lhE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_lkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_lk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_llE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_llk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xg_lYU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_ll036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xg_lmU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_frsU8A_5EeOZF-Flwvdt4A/94" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lmk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xg_lnU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xg_lm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lnU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xg_lnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_ln036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_loE36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_loU36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xg_lo036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xg_lpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xg_lpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xg_lpk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()>0 &#xA;implies&#xA;&#xA;self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_lp036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xg_ltU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_lqU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_lq036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_lrU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xg_luU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xg_lr036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_lsU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xg_ls036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg_ltU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xg_ltk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg_lt036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xg_luE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xg_luU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xg_luk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xg_lu036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xg_lvE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJYE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhAJYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAJYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAJY036EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAJZE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJZk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhAJYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJaU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhAJYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJbE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhAJbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAJbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAJb036EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAJcE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJck36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhAJbE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJdU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhAJbE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJeE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhAJbE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJe036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhAJfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhAJfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAJfk36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAJf036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJgU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhAJe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJhE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhAJe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJh036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhAJe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJik36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhAJe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJjU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhAJe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJkE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhAJe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJk036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xg_lnU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJlk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhAJl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAJmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAJmU36EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAJmk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAJnE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJnk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhAJn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAJoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAJoU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert' or 'CTIEActivityDiagramProfile::calculate')->size()>0 &#xA;implies&#xA;not self.constraint->notEmpty()"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAJok36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAJpE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJpk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhAJnk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAJqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAJqU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->size()>0 &#xA;implies&#xA;not self.constraint->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJq036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhAJnk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAJrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAJrk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.constraint->notEmpty() and &#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->notEmpty()&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJsE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhAJe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhAJs036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_7cJZkA_4EeOZF-Flwvdt4A/93" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJtE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhAJt036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJt036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhAJuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAJuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAJuk36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAJu036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJvU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhAJvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAJv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAJwE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()>0 &#xA;implies&#xA;&#xA;self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAJwU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhAJz036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAJw036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAJxU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAJx036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhAJ0036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAJyU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAJy036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAJzU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAJz036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhAJ0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAJ0U36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhAJ0k36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAJ0036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhAJ1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAJ1U36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhAJ1k36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJ1036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhAJ2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAJ2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAJ2k36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAJ2036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJ3U36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhAJ1036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJ3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJ4E36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhAJ1036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJ4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJ4036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhAJ5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAJ5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAJ5k36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAJ5036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJ6U36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhAJ4036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJ6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJ7E36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhAJ4036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJ7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJ7036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhAJ4036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJ8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJ8k36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhAJ8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhAJ9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAJ9U36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAJ9k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJ-E36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhAJ8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJ-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJ-036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhAJ8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJ_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAJ_k36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhAJ8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAJ_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKAU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhAJ8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKBE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhAJ8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKB036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhAJ8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKCk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhAJt036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKDU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhAKDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAKD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAKEE36EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAKEU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAKE036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKFU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhAKFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAKF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAKGE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert' or 'CTIEActivityDiagramProfile::calculate')->size()>0 &#xA;implies&#xA;not self.constraint->notEmpty()"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAKGU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAKG036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKHU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhAKFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAKH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAKIE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->size()>0 &#xA;implies&#xA;not self.constraint->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKIk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhAKFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAKJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAKJU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->size()>0 &#xA;implies&#xA;&#xA;if (self.base_Comment.annotatedElement.oclIsTypeOf(uml::OpaqueAction)) then&#xA;&#x9;true&#xA;else&#xA;&#x9;false&#xA;endif&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKJ036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhAJ8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhAKKk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_aB20EA_4EeOZF-Flwvdt4A/92" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKK036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhAKLk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKLk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhAKL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAKME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAKMU36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAKMk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKNE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhAKNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAKNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAKN036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()>0 &#xA;implies&#xA;&#xA;self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAKOE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhAKRk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAKOk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAKPE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAKPk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhAKSk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAKQE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAKQk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAKRE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAKRk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhAKR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAKSE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhAKSU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAKSk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhAKS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAKTE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhAKTU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKTk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhAKT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAKUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAKUU36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAKUk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKVE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhAKTk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKV036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhAKTk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKWk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhAKW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAKXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAKXU36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAKXk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKYE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhAKWk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKY036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhAKWk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKZk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhAKWk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKaU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhAKak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhAKa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAKbE36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAKbU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKb036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhAKaU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKck36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhAKaU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKdU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhAKaU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKeE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhAKaU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKe036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhAKaU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKfk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhAKaU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKgU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhAKLk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKhE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhAKhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAKhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAKh036EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAKiE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAKik36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKjE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhAKjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAKjk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAKkE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKkk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhAKjE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAKlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAKlU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::calculate')->size()>0 &#xA;implies&#xA;not self.constraint->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKl036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhAKjE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAKmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAKmk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->size()>0 &#xA;implies&#xA;not self.constraint->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKnE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhAKaU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKnU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhAKn036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_P7iEUA_4EeOZF-Flwvdt4A/91" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKoE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhAKo036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKo036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhAKpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAKpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAKpk36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAKp036EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKqU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhAKqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAKq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAKrE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()>0 &#xA;implies&#xA;&#xA;self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAKrU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhAKu036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAKr036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAKsU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAKs036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhAKv036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAKtU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAKt036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAKuU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAKu036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhAKvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAKvU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhAKvk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAKv036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhAKwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAKwU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhAKwk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKw036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhAKxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAKxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAKxk36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAKx036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKyU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhAKw036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKzE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhAKw036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAKzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAKz036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhAK0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAK0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAK0k36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAK0036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAK1U36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhAKz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAK1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAK2E36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhAKz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAK2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAK2036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhAKz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAK3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAK3k36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhAK3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhAK4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAK4U36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAK4k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAK5E36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhAK3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAK5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAK5036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhAK3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAK6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAK6k36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhAK3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAK6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAK7U36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhAK3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAK7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAK8E36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhAK3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAK8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAK8036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhAK3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAK9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAK9k36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhAKo036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAK9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAK-U36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhAK-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAK-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAK_E36EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAK_U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAK_036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALAU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhALAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhALA036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhALBU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALB036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhALAU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALCk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhALAU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhALDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhALDU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::assert')->size()>0 &#xA;implies&#xA;not self.constraint->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALD036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhAK3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhALEk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_1Ckd0A_3EeOZF-Flwvdt4A/90" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALE036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhALFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALFk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhALF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhALGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhALGU36EeSS5u8wdxTIGg" key="documentation" value="let activity_stereotypes : Set(uml::Stereotype) = self.base_OpaqueAction.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::assert' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::calculate') in&#xA;&#xA;activity_stereotypes->size()=1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhALGk36EeSS5u8wdxTIGg" name="base_OpaqueAction" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OpaqueAction"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALHE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhALHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhALHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhALH036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()>0 &#xA;implies&#xA;&#xA;self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhALIE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhALLk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhALIk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhALJE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhALJk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhALMk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhALKE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhALKk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhALLE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhALLk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhALL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhALME36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhALMU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhALMk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhALM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhALNE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhALNU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALNk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhALN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhALOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhALOU36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhALOk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALPE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhALNk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALP036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhALNk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALQk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhALQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhALRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhALRU36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhALRk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALSE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhALQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALS036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhALQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALTk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhALQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALUU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhALUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhALU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhALVE36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhALVU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALV036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhALUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALWk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhALUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALXU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhALUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALYE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhALUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALY036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhALUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALZk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhALUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALaU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhALFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALbE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhALbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhALbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhALb036EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhALcE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhALck36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALdE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhALdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhALdk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhALeE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALek36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhALdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALfU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhALdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALgE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhALUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhALg036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_MKjY8A_rEeOZF-Flwvdt4A/89" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALhE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhALh036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALh036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhALiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhALiU36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALi036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhALjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhALjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhALjk36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()>0 &#xA;implies&#xA;&#xA;self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhALj036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhALnU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhALkU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhALk036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhALlU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhALoU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhALl036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhALmU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhALm036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhALnU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhALnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhALn036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhALoE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhALoU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhALok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhALo036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhALpE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALpU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhALpk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhALp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhALqE36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhALqU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALq036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhALpU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALrk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhALpU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALsU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhALsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhALs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhALtE36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhALtU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALt036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhALsU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALuk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhALsU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALvU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhALsU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALwE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhALwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhALwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhALw036EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhALxE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALxk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhALwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALyU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhALwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALzE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhALwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhALzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhALz036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhALwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAL0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAL0k36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhALwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAL0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAL1U36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhALwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAL1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAL2E36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhALh036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAL2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAL2036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhAL3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAL3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAL3k36EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAL3036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAL4U36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAL4036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhAL5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAL5U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAL5036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAL6U36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhAL4036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAL6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAL7E36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhAL4036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAL7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAL7036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhALwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAL8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhAL8k36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_pxodcA_pEeOZF-Flwvdt4A/88" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAL8036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhAL9k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAL9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAL9k36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhAL9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAL-E36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAL-k36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhAL-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAL_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAL_U36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()>0 &#xA;implies&#xA;&#xA;self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() &#xA;self.base_Comment.annotatedElement.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size() = 1 implies&#xA;self.base_Comment.getAppliedStereotype('CTIEActivityDiagramProfile::query')->size() = 1&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAL_k36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhAMDE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAMAE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAMAk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAMBE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhAMEE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAMBk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAMCE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAMCk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAMDE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhAMDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAMDk36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhAMD036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAMEE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhAMEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAMEk36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhAME036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMFE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhAMFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAMFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAMF036EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAMGE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMGk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhAMFE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAMG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMHU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhAMFE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAMHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMIE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhAMIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAMIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAMI036EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAMJE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMJk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhAMIE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAMJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMKU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhAMIE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAMKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMLE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhAMIE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAMLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAML036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhAMME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhAMMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAMMk36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAMM036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMNU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhAML036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAMNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMOE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhAML036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAMOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMO036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhAML036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAMPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMPk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhAML036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAMP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMQU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhAML036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAMQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMRE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhAML036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAMRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMR036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhAL9k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAMSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMSk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhAMS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAMTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAMTU36EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAMTk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAMUE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMUk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhAMU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAMVE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAMVk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMWE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhAMUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAMWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMW036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhAMUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAMXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMXk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhAML036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAMX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhAMYU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_Jh_GIA_pEeOZF-Flwvdt4A/87" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMYk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhAMZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAMY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMZU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhAMZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAMZ036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMaU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhAMak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAMa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAMbE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()>0 &#xA;implies&#xA;&#xA;self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;not self.constraint->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty() &#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromrecord')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.constraint->notEmpty() and&#xA;&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() "/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAMbU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhAMe036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAMb036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAMcU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAMc036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhAMf036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAMdU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAMd036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAMeU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAMe036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhAMfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAMfU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhAMfk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAMf036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhAMgE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAMgU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhAMgk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAMg036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhAMhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAMhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAwcE36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAwcU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwc036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhAMg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAwdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwdk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhAMg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAwd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAweU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhAwek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAwe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAwfE36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAwfU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwf036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhAweU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAwgE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwgk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhAweU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAwg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwhU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhAweU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAwhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwiE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhAwiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhAwik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAwi036EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAwjE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwjk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhAwiE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAwj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwkU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhAwiE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAwkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwlE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhAwiE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAwlU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwl036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhAwiE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAwmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwmk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhAwiE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAwm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwnU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhAwiE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAwnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwoE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhAMZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAwoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwo036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhAwpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAwpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAwpk36EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAwp036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAwqU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwq036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhAwrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAwrU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAwr036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwsU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhAwq036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAwsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwtE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhAwq036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAwtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwt036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhAwiE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAwuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhAwuk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_82hgIA_oEeOZF-Flwvdt4A/86" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwu036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhAwvk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAwvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwvk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhAwv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAwwE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAwwk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhAww036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAwxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAwxU36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()>0 &#xA;implies&#xA;&#xA;self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty() and&#xA;not self.constraint->notEmpty()&#xA;&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty()"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAwxk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhAw1E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAwyE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAwyk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAwzE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhAw2E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAwzk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAw0E36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAw0k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAw1E36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhAw1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAw1k36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhAw1036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAw2E36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhAw2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAw2k36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhAw2036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAw3E36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhAw3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAw3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAw3036EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAw4E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAw4k36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhAw3E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAw4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAw5U36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhAw3E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAw5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAw6E36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhAw6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAw6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAw6036EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAw7E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAw7k36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhAw6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAw7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAw8U36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhAw6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAw8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAw9E36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhAw6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAw9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAw9036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhAw-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhAw-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAw-k36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAw-036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAw_U36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhAw9036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAw_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxAE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhAw9036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxA036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhAw9036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxBk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhAw9036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxCU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhAw9036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxDE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhAw9036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxD036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhAwvk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxEk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhAxE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAxFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAxFU36EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAxFk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAxGE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxGk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhAxG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAxHE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAxHk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxIE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhAxGk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxI036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhAxGk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxJk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhAw9036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhAxKU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_3suUwA_oEeOZF-Flwvdt4A/85" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxKk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhAxLU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxLU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhAxLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAxL036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxMU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhAxMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAxM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAxNE36EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()>0 &#xA;implies&#xA;&#xA;self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;not self.parameters->notEmpty()&#xA;endif&#xA;and&#xA;not self.agent_type->notEmpty() and&#xA;not self.question->notEmpty()&#xA;&#xA;self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromagent')->size()>0 &#xA;implies&#xA;&#xA;not self.source->notEmpty() and&#xA;not self.type->notEmpty() and&#xA;not self.parameters->notEmpty() and&#xA;&#xA;self.agent_type->notEmpty() and&#xA;self.question->notEmpty()"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAxNU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhAxQ036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAxN036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAxOU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAxO036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhAxR036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAxPU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAxP036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAxQU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAxQ036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhAxRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAxRU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhAxRk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAxR036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhAxSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAxSU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhAxSk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxS036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhAxTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAxTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAxTk36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAxT036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxUU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhAxS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxVE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhAxS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxV036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhAxWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAxWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAxWk36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAxW036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxXU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhAxV036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxYE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhAxV036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxY036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhAxV036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxZk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhAxZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhAxaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAxaU36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAxak36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxbE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhAxZk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxb036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhAxZk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxck36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhAxZk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxdU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhAxZk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxeE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhAxZk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxe036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhAxZk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxfk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhAxLU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxgU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhAxgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAxg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAxhE36EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAxhU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAxh036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxiU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhAxik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAxi036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAxjU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxj036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhAxiU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxkk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhAxiU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxlU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhAxZk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhAxmE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_lVthMA_oEeOZF-Flwvdt4A/84" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxmU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhAxnE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxnE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhAxnU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAxnk36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxoE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhAxoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAxok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAxo036EeSS5u8wdxTIGg" key="documentation" value="self.base_Comment.annotatedElement.getAppliedStereotype('CTIEActivityDiagramProfile::fromlaw')->size()>0 &#xA;implies&#xA;&#xA;self.source->notEmpty() and&#xA;self.type->notEmpty()&#xA;and&#xA;if self.type = Query_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->notEmpty()&#xA;else&#xA;&#x9;true&#xA;endif&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAxpE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhAxsk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAxpk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAxqE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAxqk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhAxtk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAxrE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAxrk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAxsE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAxsk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhAxs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAxtE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhAxtU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAxtk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhAxt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAxuE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhAxuU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxuk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhAxu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAxvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAxvU36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAxvk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxwE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhAxuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxw036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhAxuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxxk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhAxx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAxyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAxyU36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAxyk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxzE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhAxxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAxzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAxz036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhAxxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAx0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAx0k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhAxxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAx0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAx1U36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhAx1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhAx1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAx2E36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAx2U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAx2036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhAx1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAx3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAx3k36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhAx1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAx3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAx4U36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhAx1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAx4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAx5E36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhAx1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAx5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAx5036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhAx1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAx6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAx6k36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhAx1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAx6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAx7U36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhAxnE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAx7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAx8E36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhAx8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAx8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAx8036EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAx9E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAx9k36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAx-E36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhAx-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAx-k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAx_E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAx_k36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhAx-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAx_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyAU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhAx-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyBE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhAx1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhAyB036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_KREEkA_nEeOZF-Flwvdt4A/83" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyCE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhAyC036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyC036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhAyDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAyDU36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyD036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhAyEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAyEU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhAyH036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAyE036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAyFU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAyF036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhAyI036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAyGU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAyG036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAyHU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAyH036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhAyIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAyIU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhAyIk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAyI036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhAyJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAyJU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhAyJk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyJ036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhAyKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAyKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAyKk36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAyK036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyLU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhAyJ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyME36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhAyJ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyM036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhAyNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAyNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAyNk36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAyN036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyOU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhAyM036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyPE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhAyM036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyP036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhAyM036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyQk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhAyQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhAyRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAyRU36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAyRk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAySE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhAyQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAySU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyS036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhAyQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyTk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhAyQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyUU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhAyQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyVE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhAyQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyV036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhAyQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyWk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhAyC036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyXU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhAyXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAyX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAyYE36EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAyYU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAyY036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyZU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhAyZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAyZ036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAyaU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAya036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhAyZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAybE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAybk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhAyZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAycU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhAyQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhAydE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_m6_H0A_mEeOZF-Flwvdt4A/82" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAydU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhAyeE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAydk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyeE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhAyeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAyek36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyfE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhAyfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAyfk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhAyjE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAygE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAygk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAyhE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhAykE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAyhk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAyiE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAyik36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAyjE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhAyjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAyjk36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhAyj036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAykE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhAykU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAykk36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhAyk036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAylE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhAylU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAylk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAyl036EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAymE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAymk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhAylE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAym036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAynU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhAylE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAynk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyoE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhAyoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAyok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAyo036EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAypE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAypk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhAyoE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyqU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhAyoE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyrE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhAyoE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyr036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhAysE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhAysU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAysk36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAys036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAytU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhAyr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAytk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyuE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhAyr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyu036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhAyr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyvk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhAyr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAywU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhAyr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAywk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyxE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhAyr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyx036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhAyeE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAyyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAyyk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhAyy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAyzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAyzU36EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAyzk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAy0E36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAy0k36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhAy0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAy1E36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAy1k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAy2E36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhAy0k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAy2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAy2036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhAy0k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAy3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAy3k36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhAyr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAy3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhAy4U36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/__BPLkA_lEeOZF-Flwvdt4A/81" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAy4k36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhAy5U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAy4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAy5U36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhAy5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAy5036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAy6U36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhAy6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAy6036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhAy-U36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAy7U36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAy7036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAy8U36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhAy_U36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAy8036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAy9U36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAy9036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAy-U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhAy-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAy-036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhAy_E36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAy_U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhAy_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAy_036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhAzAE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzAU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhAzAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAzA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAzBE36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAzBU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzB036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhAzAU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzCk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhAzAU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzDU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhAzDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAzD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAzEE36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAzEU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzE036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhAzDU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzFk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhAzDU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzGU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhAzDU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzHE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhAzHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhAzHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAzH036EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAzIE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzIk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhAzHE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzJU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhAzHE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzKE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhAzHE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzK036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhAzHE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzLk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhAzHE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzMU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhAzHE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzNE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhAy5U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzN036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhAzOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAzOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAzOk36EeSS5u8wdxTIGg" key="documentation" value="let context_stereotypes : Set(uml::Stereotype) = self.base_ActivityParameterNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::context') in&#xA;&#xA;context_stereotypes->size()=1&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAzO036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAzPU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzP036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhAzQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAzQU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAzQ036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzRU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhAzP036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzSE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhAzP036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzS036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhAzHE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhAzTk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_tNy_IA_lEeOZF-Flwvdt4A/80" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzT036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhAzUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzUk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhAzU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAzVE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzVk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhAzV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAzWE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhAzZk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAzWk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAzXE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAzXk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhAzak36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAzYE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAzYk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAzZE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAzZk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhAzZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAzaE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhAzaU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhAzak36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhAza036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhAzbE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhAzbU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzbk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhAzb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAzcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAzcU36EeSS5u8wdxTIGg" key="documentation" value="let direction_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::in' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::out') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;direction_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;direction_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAzck36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzdE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhAzbk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzd036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhAzbk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzek36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhAze036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhAzfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAzfU36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAzfk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzgE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhAzek36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzg036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhAzek36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzhk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhAzek36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAziU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhAzik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhAzi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhAzjE36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAzjU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzj036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhAziU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzkk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhAziU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzlU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhAziU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzmE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhAziU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzm036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhAziU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAznE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAznk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhAziU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzoU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhAzUk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzpE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhAzpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAzpk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhAzqE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzqk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhAzq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAzrE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhAzrk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzsE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhAzqk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzs036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhAzqk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAztE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAztk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhAziU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhAzuU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_h3ywMA_lEeOZF-Flwvdt4A/79" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhAzuk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhBXgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhAzu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBXgU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhBXgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBXg036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBXhU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhBXhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBXh036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhBXlU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBXiU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBXi036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBXjU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhBXmU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBXj036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBXkU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBXk036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhBXlU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhBXlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhBXl036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhBXmE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhBXmU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhBXmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhBXm036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhBXnE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBXnU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhBXnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBXn036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBXoU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhBXnU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBXok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBXpE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhBXnU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBXpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBXp036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhBXqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBXqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBXqk36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBXq036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBXrU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhBXp036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBXrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBXsE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhBXp036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBXsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBXs036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhBXp036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBXtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBXtk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhBXt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhBXuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBXuU36EeSS5u8wdxTIGg" key="documentation" value="let type_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::date' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::number' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::string' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::boolean' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::money' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::object' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::objectset') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;type_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;type_stereotypes->size()=0&#xA;endif"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBXuk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBXvE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhBXtk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBXvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBXv036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhBXtk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBXwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBXwk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhBXtk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBXw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBXxU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhBXtk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBXxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBXyE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhBXtk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBXyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBXy036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhBXtk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBXzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBXzk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhBXgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBXz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBX0U36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhBX0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBX0036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBX1U36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBX1036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhBX2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBX2U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBX2036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBX3U36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhBX1036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBX3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBX4E36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhBX1036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBX4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBX4036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhBXtk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBX5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhBX5k36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_DF1e4A_lEeOZF-Flwvdt4A/78" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBX5036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhBX6k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBX6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBX6k36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhBX6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBX7E36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBX7k36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhBX7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBX8E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhBX_k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBX8k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBX9E36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBX9k36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhBYAk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBX-E36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBX-k36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBX_E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhBX_k36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhBX_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhBYAE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhBYAU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhBYAk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhBYA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhBYBE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhBYBU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYBk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhBYB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBYCE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYCk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhBYBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYDU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhBYBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYEE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhBYEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBYEk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYFE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhBYEE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBYFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBYF036EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYGU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhBYEE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBYG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBYHE36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYHk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhBYEE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBYIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBYIU36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(uml::Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(uml::Pin) or self.base_ObjectNode.oclIsTypeOf(uml::ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYI036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhBYJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBYJU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYJ036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhBYI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYKk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhBYI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYLU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhBYI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYME36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhBYI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYM036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhBYI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYNk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhBYI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYOU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhBX6k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYPE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhBYPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBYPk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBYQE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYQk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhBYQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBYRE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBYRk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYSE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhBYQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYS036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhBYQk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYTk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhBYI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhBYUU36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_0Qn-IA_kEeOZF-Flwvdt4A/77" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYUk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhBYVU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYVU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhBYVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBYV036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYWU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhBYWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBYW036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhBYaU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBYXU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBYX036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBYYU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhBYbU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBYY036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBYZU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBYZ036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhBYaU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhBYak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhBYa036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhBYbE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhBYbU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhBYbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhBYb036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhBYcE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYcU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhBYck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBYc036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYdU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhBYcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYeE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhBYcU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYe036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhBYfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBYfU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYf036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhBYe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYgE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBYgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBYgk36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(Pin) or self.base_ObjectNode.oclIsTypeOf(ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYhE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhBYe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBYhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBYh036EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(Pin) or self.base_ObjectNode.oclIsTypeOf(ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;source_stereotypes->size()=0&#xA;&#xA;endif"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYiU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhBYe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBYi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBYjE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size()=1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYjk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhBYj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBYkE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYkk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhBYjk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYlU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhBYjk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYmE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhBYjk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYm036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhBYjk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYnE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYnk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhBYjk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYoU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhBYjk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYpE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhBYVU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYp036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhBYqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBYqU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBYq036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYrU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhBYrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBYr036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBYsU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYs036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhBYrU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYtk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhBYrU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYuU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhBYjk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhBYvE36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_xRkzEA_kEeOZF-Flwvdt4A/76" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYvU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhBYwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBYvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYwE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhBYwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBYwk36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBYxE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhBYxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBYxk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhBY1E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBYyE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBYyk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBYzE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhBY2E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBYzk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBY0E36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBY0k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhBY1E36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhBY1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhBY1k36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhBY1036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhBY2E36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhBY2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhBY2k36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhBY2036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBY3E36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhBY3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBY3k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBY4E36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhBY3E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBY4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBY4036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhBY3E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBY5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBY5k36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhBY5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBY6E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBY6k36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhBY5k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBY6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBY7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBY7U36EeSS5u8wdxTIGg" key="documentation" value="let source_stereotypes : Set(Stereotype) = self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or stereotype.name ='CTIEActivityDiagramProfile::fromrecord') in&#xA;&#xA;if (self.base_ObjectNode.oclIsTypeOf(Pin) or self.base_ObjectNode.oclIsTypeOf(ActivityParameterNode)) then&#xA;&#xA;source_stereotypes->size()=1&#xA;&#xA;else&#xA;&#xA;false&#xA;&#xA;endif&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBY7036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhBY5k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBY8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBY8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBY8k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size()=1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBY9E36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhBY5k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBY9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBY9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBY9036EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size()=1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBY-U36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhBY-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBY-036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBY_U36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhBY-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBY_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZAE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhBY-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZA036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhBY-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZBk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhBY-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZCU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhBY-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZDE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhBY-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZD036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhBYwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZEk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhBZE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZFE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBZFk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZGE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhBZGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZGk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZHE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZHk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhBZGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZIU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhBZGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZJE36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhBY-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhBZJ036EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_vXN0oA_jEeOZF-Flwvdt4A/75" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZKE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhBZK036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZK036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhBZLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZLU36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZL036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhBZME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBZMU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhBZP036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBZM036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBZNU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBZN036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhBZQ036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBZOU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZO036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZPU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhBZP036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhBZQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhBZQU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhBZQk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhBZQ036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhBZRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhBZRU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhBZRk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZR036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhBZSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZSU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZS036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhBZR036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZTk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhBZR036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZUU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhBZUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZU036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZVU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhBZUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBZV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBZWE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZWk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhBZUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBZXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBZXU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='CTIEActivityDiagramProfile::fromagent' or stereotype.name ='CTIEActivityDiagramProfile::fromlaw' or stereotype.name ='CTIEActivityDiagramProfile::fromrecord')->size()=1"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZX036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhBZUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBZYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBZYk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='fromagent' or stereotype.name ='fromlaw' or stereotype.name ='fromrecord')->size()=1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZZE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhBZZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZZk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZaE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhBZZE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZa036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhBZZE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZbk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhBZZE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZcU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhBZZE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZdE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhBZZE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZd036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhBZZE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZek36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhBZK036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZfU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhBZfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZf036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBZgU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZg036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhBZhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZhU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZh036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZiU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhBZg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZjE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhBZg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZj036EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhBZZE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhBZkk36EeSS5u8wdxTIGg" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_pfaTwA_jEeOZF-Flwvdt4A/74" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZk036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhBZlk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZlk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhBZl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZmE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZmk36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhBZm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBZnE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhBZqk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBZnk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBZoE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBZok36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhBZrk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBZpE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZpk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZqE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhBZqk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhBZq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhBZrE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhBZrU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhBZrk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhBZr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhBZsE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhBZsU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZsk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhBZs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZtE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZtk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhBZsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZuU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhBZsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZvE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhBZvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZvk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZwE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhBZvE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBZwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBZw036EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='fromagent' or stereotype.name ='fromlaw' or stereotype.name ='fromrecord')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZxU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhBZvE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBZx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBZyE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='fromagent' or stereotype.name ='fromlaw' or stereotype.name ='fromrecord')->size()=1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZyk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhBZvE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBZzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBZzU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='fromagent' or stereotype.name ='fromlaw' or stereotype.name ='fromrecord')->size()=1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZz036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhBZ0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZ0U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZ0036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhBZz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZ1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZ1k36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhBZz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZ1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZ2U36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhBZz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZ2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZ3E36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhBZz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZ3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZ3036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhBZz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZ4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZ4k36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhBZz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZ4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZ5U36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhBZlk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZ5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZ6E36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhBZ6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZ6k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBZ7E36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZ7k36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhBZ7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZ8E36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBZ8k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZ9E36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhBZ7k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZ9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZ9036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhBZ7k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZ-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZ-k36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhBZz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZ-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhBZ_U36EeSS5u8wdxTIGg" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_m40E8A_jEeOZF-Flwvdt4A/73" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBZ_k36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhBaAU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBZ_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaAU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhBaAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBaA036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaBU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhBaBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBaB036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhBaFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBaCU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBaC036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBaDU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhBaGU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBaD036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBaEU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBaE036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhBaFU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhBaFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhBaF036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhBaGE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhBaGU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhBaGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhBaG036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhBaHE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaHU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhBaHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBaH036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaIU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhBaHU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBaIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaJE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhBaHU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBaJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaJ036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhBaKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBaKU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaK036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhBaJ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBaLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBaLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBaLk36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='fromagent' or stereotype.name ='fromlaw' or stereotype.name ='fromrecord')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaME36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhBaJ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBaMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBaMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBaM036EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='fromagent' or stereotype.name ='fromlaw' or stereotype.name ='fromrecord')->size()=1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaNU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhBaJ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBaNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBaN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBaOE36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='fromagent' or stereotype.name ='fromlaw' or stereotype.name ='fromrecord')->size()=1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaOk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhBaO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBaPE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaPk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhBaOk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBaP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaQU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhBaOk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBaQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaRE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhBaOk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBaRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaR036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhBaOk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBaSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaSk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhBaOk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBaS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaTU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhBaOk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBaTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaUE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhBaAU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBaUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaU036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhBaVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBaVU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBaV036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaWU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhBaWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBaW036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBaXU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaX036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhBaWU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBaYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaYk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhBaWU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBaY036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaZU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhBaOk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBaZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhBaaE36EeSS5u8wdxTIGg" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_iInsYA_jEeOZF-Flwvdt4A/72" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaaU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhBabE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBaak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBabE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhBabU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBabk36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBacE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhBacU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBack36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhBagE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBadE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBadk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBaeE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhBahE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhBaek36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBafE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBafk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhBagE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhBagU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhBagk36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhBag036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhBahE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhBahU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhBahk36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhBah036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaiE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhBaiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBaik36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBajE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhBaiE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBajU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaj036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhBaiE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBakE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBakk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhBak036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhBalE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBalk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhBakk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBal036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBamE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBamU36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='fromagent' or stereotype.name ='fromlaw' or stereotype.name ='fromrecord')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBam036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhBakk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBanE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBanU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBank36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='fromagent' or stereotype.name ='fromlaw' or stereotype.name ='fromrecord')->size()=1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBaoE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhBakk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhBaoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhBaok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhBao036EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='fromagent' or stereotype.name ='fromlaw' or stereotype.name ='fromrecord')->size()=1&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhBapU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhB-kE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB-kU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-k036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhBapU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB-lE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-lk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhBapU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB-l036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-mU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhBapU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB-mk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-nE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhBapU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB-nU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-n036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhBapU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB-oE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-ok36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhBapU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB-o036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-pU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhBabE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB-pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-qE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhB-qU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB-qk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB-rE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-rk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhB-r036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB-sE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB-sk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-tE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhB-rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB-tU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-t036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhB-rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB-uE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-uk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhBapU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB-u036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhB-vU36EeSS5u8wdxTIGg" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_HVUpAA_jEeOZF-Flwvdt4A/71" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-vk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhB-wU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB-v036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-wU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhB-wk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB-w036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-xU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhB-xk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB-x036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhB-1U36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB-yU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB-y036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB-zU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhB-2U36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB-z036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB-0U36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB-0036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhB-1U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhB-1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhB-1036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhB-2E36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhB-2U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhB-2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhB-2036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhB-3E36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-3U36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhB-3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB-3036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-4U36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhB-3U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB-4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-5E36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhB-3U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB-5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-5036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhB-6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB-6U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-6036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhB-5036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB-7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
          <eAnnotations xmi:id="_xhB-7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_xhB-7k36EeSS5u8wdxTIGg" key="documentation" value="self.base_ObjectNode.getAppliedStereotypes()->select(stereotype|stereotype.name ='fromagent' or stereotype.name ='fromlaw' or stereotype.name ='fromrecord')->size()=1&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-8E36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhB-5036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB-8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-8036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhB-5036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB-9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-9k36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhB-9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB--E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB--k36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhB-9k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB--036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB-_U36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhB-9k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB-_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_AE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhB-9k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_AU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_A036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhB-9k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_BE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_Bk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhB-9k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_B036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_CU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhB-9k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_Ck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_DE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhB-wU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_DU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_D036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhB_EE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_EU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB_E036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_FU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhB_Fk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_F036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_GU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_G036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhB_FU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_HE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_Hk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhB_FU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_H036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_IU36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhB-9k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_Ik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhB_JE36EeSS5u8wdxTIGg" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_Il850AwGEeOWG7iKodzrRQ/70" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_JU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhB_KE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_Jk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_KE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhB_KU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_Kk36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_LE36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhB_LU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB_Lk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhB_PE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB_ME36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB_Mk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB_NE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhB_QE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB_Nk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_OE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_Ok36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhB_PE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhB_PU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhB_Pk36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhB_P036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhB_QE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhB_QU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhB_Qk36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhB_Q036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_RE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhB_RU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_Rk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_SE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhB_RE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_SU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_S036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhB_RE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_TE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_Tk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhB_T036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_UE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_Uk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhB_Tk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_U036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_VU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhB_Tk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_Vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_WE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhB_Tk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_WU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_W036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhB_XE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_XU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_X036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhB_W036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_YE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_Yk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhB_W036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_Y036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_ZU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhB_W036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_Zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_aE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhB_W036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_aU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_a036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhB_W036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_bE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_bk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhB_W036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_b036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_cU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhB_KE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_ck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_dE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhB_dU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_dk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB_eE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_ek36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhB_e036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_fE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_fk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_gE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhB_ek36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_gU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_g036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhB_ek36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_hE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_hk36EeSS5u8wdxTIGg" name="date" eSuperTypes="_xhB_W036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_h036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhB_iU36EeSS5u8wdxTIGg" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_eoU78AvyEeOWG7iKodzrRQ/69" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_ik36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhB_jU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_i036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_jU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhB_jk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_j036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_kU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhB_kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB_k036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhB_oU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB_lU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB_l036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB_mU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhB_pU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB_m036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_nU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_n036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhB_oU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhB_ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhB_o036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhB_pE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhB_pU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhB_pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhB_p036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhB_qE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_qU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhB_qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_q036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_rU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhB_qU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_sE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhB_qU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_sU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_s036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhB_tE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_tU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_t036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhB_s036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_uE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_uk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhB_s036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_u036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_vU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhB_s036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_wE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhB_wU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_wk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_xE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhB_wE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_xU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_x036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhB_wE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_yE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_yk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhB_wE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_y036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_zU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhB_wE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_0E36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhB_wE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_0036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhB_wE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_1k36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhB_jU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_2U36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhB_2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_2036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB_3U36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_3036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhB_4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_4U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_4036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_5U36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhB_3036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_6E36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhB_3036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhB_6036EeSS5u8wdxTIGg" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_m8A8UAvlEeOWG7iKodzrRQ/68" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_7E36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhB_7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhB_7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_7036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhB_8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB_8U36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhB_8036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhB_9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB_9U36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhCAA036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB_9036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB_-U36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB_-036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhCAB036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhB__U36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhB__036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCAAU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCAA036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhCABE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCABU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhCABk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCAB036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhCACE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCACU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhCACk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAC036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhCADE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCADU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAD036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhCAC036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAEk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhCAC036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAFU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhCAFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCAF036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAGU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhCAFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAHE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhCAFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAH036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhCAFU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAIk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhCAI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCAJE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAJk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhCAIk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAKU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhCAIk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCALE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhCAIk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCALU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAL036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhCAIk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAMk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhCAIk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCANU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhCAIk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCANk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAOE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhB_7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAO036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhCAPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCAPU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCAP036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAQU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhCAQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCAQ036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCARU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAR036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhCAQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCASE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCASk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhCAQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhCATU36EeSS5u8wdxTIGg" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_f-2V4AvlEeOWG7iKodzrRQ/67" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCATk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhCAUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAUU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhCAUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCAU036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAVU36EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhCAVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCAV036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhCAZU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCAWU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCAW036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCAXU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhCAaU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCAX036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCAYU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCAY036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCAZU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhCAZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCAZ036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhCAaE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCAaU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhCAak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCAa036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhCAbE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAbU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhCAbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCAb036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAcU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhCAbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAdE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhCAbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAd036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhCAeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCAeU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAe036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhCAd036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAfk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhCAd036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAgU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhCAd036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAhE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhCAhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCAhk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAiE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhCAhE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAi036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhCAhE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAjk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhCAhE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAkU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhCAhE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAlE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhCAhE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAlU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAl036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhCAhE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAmk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhCAUU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAnU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhCAnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCAn036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCAoU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAo036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhCApE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCApU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCAp036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAqU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhCAo036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCArE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhCAo036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCArU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhCAr036EeSS5u8wdxTIGg" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_3MueoAvNEeOWG7iKodzrRQ/66" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAsE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhCAs036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAs036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhCAtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCAtU36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAt036EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhCAxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCAuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCAuU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhCAyk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCAu036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCAvU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCAv036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhCAzk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCAwU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCAw036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCAxk36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhCAx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCAyE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCAyk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhCAy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCAzE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhCAzU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCAzk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhCAz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCA0E36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhCA0U36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCA0k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhCA0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCA1E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCA1k36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhCA0k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCA1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCA2U36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhCA0k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCA2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCA3E36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhCA3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCA3k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCA4E36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhCA3E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCA4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCA4036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhCA3E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCA5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCA5k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhCA3E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCA5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCA6U36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhCA6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCA6036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCA7U36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhCA6U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCA7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCA8E36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhCA6U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCA8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCA8036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhCA6U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCA9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCA9k36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhCA6U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCA9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCA-U36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhCA6U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCA-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCA_E36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhCA6U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCA_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCA_036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhCAs036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBAk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhCBA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCBBE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCBBk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBCE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhCBCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCBCk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCBDE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBDk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhCBCE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBEU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhCBCE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhCBFE36EeSS5u8wdxTIGg" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_ecAMcAvMEeOWG7iKodzrRQ/65" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBFU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhCBGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBGE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhCBGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCBGk36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBHE36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhCBK036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCBHk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhCBL036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCBIE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCBIk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCBJE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhCBM036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCBJk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCBKE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBK036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhCBLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCBLU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCBL036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhCBME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCBMU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhCBMk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCBM036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhCBNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCBNU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhCBNk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBN036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhCBOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCBOU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBO036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhCBN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBPk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhCBN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBQU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhCBQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCBQ036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBRU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhCBQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBSE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhCBQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBS036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhCBQU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBTk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhCBT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCBUE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBUk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhCBTk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBVU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhCBTk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBWE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhCBTk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBW036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhCBTk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBXk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhCBTk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBYU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhCBTk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBZE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhCBGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBZ036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhCBaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCBaU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCBa036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBbU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhCBbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCBb036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCBcU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBc036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhCBbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBdk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhCBbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhCBeU36EeSS5u8wdxTIGg" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_ZppioAvKEeOWG7iKodzrRQ/64" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBek36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhCBfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBfU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhCBfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCBf036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCBgU36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhClo036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCBgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCBg036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhClp036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCBhU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCBh036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCBiU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhClq036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCBi036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCloE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhClo036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhClpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhClpU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhClp036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhClqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhClqU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhClqk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhClq036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhClrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhClrU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhClrk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhClr036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhClsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhClsU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCls036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhClr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCltE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCltk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhClr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhClt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCluU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhCluk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhClu036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhClvU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhCluU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhClvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhClwE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhCluU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhClwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhClw036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhCluU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhClxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhClxk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhClx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhClyE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhClyk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhClxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCly036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhClzU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhClxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhClzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCl0E36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhClxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCl0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCl0036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhClxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCl1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCl1k36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhClxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCl1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCl2U36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhClxk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCl2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCl3E36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhCBfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCl3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCl3036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhCl4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCl4U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCl4036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCl5U36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhCl5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCl5036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCl6U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCl6036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhCl5U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCl7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCl7k36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhCl5U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCl7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhCl8U36EeSS5u8wdxTIGg" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_LBrpIAvJEeOWG7iKodzrRQ/63" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCl8k36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhCl9U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCl8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCl9U36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhCl9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCl9036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCl-U36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhCmCE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCl-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCl-036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhCmDE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCl_U36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCl_036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCmAU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhCmEE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCmA036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCmBU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmCE36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhCmCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCmCk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCmDE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhCmDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCmDk36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhCmD036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCmEE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhCmEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCmEk36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhCmE036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmFE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhCmFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCmFk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmGE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhCmFE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmG036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhCmFE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmHk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhCmH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCmIE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmIk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhCmHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmJU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhCmHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmKE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhCmHk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmK036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhCmLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCmLU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmL036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhCmK036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmMk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhCmK036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmNU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhCmK036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmOE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhCmK036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmO036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhCmK036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmPk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhCmK036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmQU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhCl9U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmRE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhCmRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCmRk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCmSE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmSk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhCmS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCmTE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCmTk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmUE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhCmSk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmU036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhCmSk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhCmVk36EeSS5u8wdxTIGg" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_x0bzAAvHEeOWG7iKodzrRQ/62" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmV036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhCmWk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmWk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhCmW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCmXE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmXk36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhCmbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCmYE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhCmcU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCmYk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCmZE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCmZk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhCmdU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCmaE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCmak36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmbU36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhCmbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCmb036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCmcU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhCmck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCmc036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhCmdE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCmdU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhCmdk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCmd036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhCmeE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmeU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhCmek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCme036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmfU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhCmeU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmgE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhCmeU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmg036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhCmhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCmhU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmh036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhCmg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmik36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhCmg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmjU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhCmg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmkE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhCmkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCmkk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmlE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhCmkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmlU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCml036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhCmkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmmk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhCmkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmnU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhCmkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmoE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhCmkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmo036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhCmkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmpk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhCmWk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmqU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhCmqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCmq036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCmrU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmr036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhCmsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCmsU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCms036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmtU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhCmr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmuE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhCmr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhCmu036EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_vB8dQAvHEeOWG7iKodzrRQ/61" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmvE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhCmv036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmv036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhCmwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCmwU36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCmw036EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhCm0k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCmxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCmxU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhCm1k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCmx036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCmyU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCmy036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhCm2k36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCmzU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCmz036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCm0k36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhCm0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCm1E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCm1k36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhCm1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCm2E36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhCm2U36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCm2k36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhCm2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCm3E36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhCm3U36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCm3k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhCm3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCm4E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCm4k36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhCm3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCm4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCm5U36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhCm3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCm5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCm6E36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhCm6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCm6k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCm7E36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhCm6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCm7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCm7036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhCm6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCm8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCm8k36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhCm6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCm8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCm9U36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhCm9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCm9036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCm-U36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhCm9U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCm-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCm_E36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhCm9U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCm_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCm_036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhCm9U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnAk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhCm9U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnBU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhCm9U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnCE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhCm9U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnC036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhCmv036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnDk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhCnD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCnEE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCnEk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnFE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhCnFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCnFk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCnGE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnGk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhCnFE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnHU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhCnFE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhCnIE36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_XrqIAAsyEeOp0Yb18Jl6bA/60" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnIU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhCnJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnJE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhCnJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCnJk36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnKE36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhCnN036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCnKk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhCnO036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCnLE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCnLk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCnME36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhCnP036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCnMk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCnNE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnN036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhCnOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCnOU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCnO036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhCnPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCnPU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhCnPk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCnP036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhCnQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCnQU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhCnQk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnQ036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhCnRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCnRU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnR036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhCnQ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnSk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhCnQ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnTU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhCnTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCnT036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnUU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhCnTU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnVE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhCnTU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnV036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhCnTU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnWk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhCnW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCnXE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnXk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhCnWk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnYU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhCnWk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnZE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhCnWk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnZ036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhCnWk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnak36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhCnWk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCna036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnbU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhCnWk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCncE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhCnJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCncU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnc036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhCndE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCndU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCnd036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCneU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhCnek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCne036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCnfU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnf036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhCneU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCngE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCngk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhCneU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCng036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnhU36EeSS5u8wdxTIGg" name="Money_Value">
          <eAnnotations xmi:id="_xhCnhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhCnh036EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_TJDfgAsyEeOp0Yb18Jl6bA/59" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCniE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhCni036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCniU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCni036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhCnjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCnjU36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnj036EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhCnnk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCnkU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhCnok36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCnk036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCnlU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCnl036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhCnpk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCnmU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCnm036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnnk36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhCnn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCnoE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCnok36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhCno036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCnpE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhCnpU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCnpk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhCnp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCnqE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhCnqU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnqk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhCnq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCnrE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnrk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhCnqk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnsU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhCnqk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCntE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhCntU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCntk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnuE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhCntE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnu036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhCntE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnvk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhCntE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnwU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhCnwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCnw036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnxU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhCnwU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnyE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhCnwU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCny036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhCnwU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCnzk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhCnwU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCnz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCn0U36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhCnwU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCn0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCn1E36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhCnwU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCn1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCn1036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhCni036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCn2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCn2k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhCn2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCn3E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCn3k36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCn4E36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhCn4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCn4k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCn5E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCn5k36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhCn4E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCn5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCn6U36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhCn4E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCn6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCn7E36EeSS5u8wdxTIGg" name="Money_Value">
          <eAnnotations xmi:id="_xhCn7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhCn7k36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_zagqIAsxEeOp0Yb18Jl6bA/58" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCn7036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhCn8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCn8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCn8k36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhCn8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCn9E36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCn9k36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhCoBU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCn9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCn-E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhCoCU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCn-k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCn_E36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCn_k36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhCoDU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCoAE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCoAk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoBU36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhCoBk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCoB036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCoCU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhCoCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCoC036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhCoDE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCoDU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhCoDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCoD036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhCoEE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoEU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhCoEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCoE036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoFU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhCoEU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCoFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoGE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhCoEU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCoGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoG036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhCoHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCoHU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoH036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhCoG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCoIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoIk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhCoG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCoI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoJU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhCoG036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCoJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoKE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhCoKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCoKk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoLE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhCoKE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCoLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoL036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhCoKE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCoME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoMk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhCoKE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCoM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoNU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhCoKE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCoNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoOE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhCoKE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCoOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoO036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhCoKE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCoPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoPk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhCn8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCoP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoQU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhCoQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCoQ036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCoRU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoR036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhCoSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCoSU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCoS036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoTU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhCoR036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCoTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoUE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhCoR036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCoUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhCoU036EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_7vHPgAsvEeOp0Yb18Jl6bA/57" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoVE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhCoV036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCoVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoV036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhCoWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCoWU36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoW036EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhCoak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCoXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCoXU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhCobk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCoX036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCoYU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCoY036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhCock36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCoZU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCoZ036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoak36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhCoa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCobE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCobk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhCob036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCocE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhCocU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCock36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhCoc036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCodE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhCodU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCodk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhCod036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCoeE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoek36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhCodk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCoe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCofU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhCodk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCofk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCogE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhCogU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCogk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCohE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhCogE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCohU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoh036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhCogE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCoiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoik36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhCogE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCoi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCojU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhCojk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCoj036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCokU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhCojU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCokk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhColE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhCojU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhColU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCol036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhCojU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhComE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhComk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhCojU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCom036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhConU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhCojU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhConk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCooE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhCojU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCooU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoo036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhCoV036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCopE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCopk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhCop036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCoqE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCoqk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCorE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhCorU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCork36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCosE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCosk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhCorE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCos036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCotU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhCorE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCotk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhCouE36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_B9asMAstEeOp0Yb18Jl6bA/56" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCouU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhCovE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCouk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCovE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhCovU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCovk36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCowE36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhCoz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhCowU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCowk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhCo0036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCoxE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCoxk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCoyE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhCo1036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhCoyk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCozE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhCoz036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhCo0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhCo0U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCo0036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhCo1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhCo1U36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhCo1k36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhCo1036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhCo2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhDMsE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhDMsU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDMsk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhDMs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDMtE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDMtk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhDMsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDMt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDMuU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhDMsk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDMuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDMvE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhDMvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDMvk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDMwE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhDMvE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDMwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDMw036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhDMvE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDMxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDMxk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhDMvE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDMx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDMyU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhDMyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDMy036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDMzU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhDMyU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDMzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDM0E36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhDMyU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDM0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDM0036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhDMyU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDM1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDM1k36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhDMyU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDM1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDM2U36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhDMyU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDM2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDM3E36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhDMyU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDM3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDM3036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhCovE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDM4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDM4k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhDM4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDM5E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDM5k36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDM6E36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhDM6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDM6k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDM7E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDM7k36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhDM6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDM7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDM8U36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhDM6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDM8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDM9E36EeSS5u8wdxTIGg" name="Money">
          <eAnnotations xmi:id="_xhDM9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDM9036EeSS5u8wdxTIGg" name="Euros">
          <eAnnotations xmi:id="_xhDM-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//Classifier"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhDM-k36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_os05EAspEeOp0Yb18Jl6bA/55" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDM-036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhDM_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDM_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDM_k36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhDM_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDNAE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNAk36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhDNEU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNA036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDNBE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhDNFU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDNBk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDNCE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDNCk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhDNGU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDNDE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDNDk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNEU36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhDNEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDNE036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhDNFU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhDNFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhDNF036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhDNGE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhDNGU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhDNGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhDNG036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhDNHE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNHU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhDNHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDNH036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNIU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhDNHU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNJE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhDNHU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNJ036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhDNKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDNKU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNK036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhDNJ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNLk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhDNJ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNMU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhDNJ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNNE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhDNNU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDNNk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNOE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhDNNE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNO036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhDNNE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNPk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhDNNE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNQU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhDNNE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNRE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhDNNE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNR036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhDNNE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNSk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhDM_k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNTU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhDNTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDNT036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDNUU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNU036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhDNVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDNVU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDNV036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNWU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhDNU036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNXE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhDNU036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNX036EeSS5u8wdxTIGg" name="Money">
          <eAnnotations xmi:id="_xhDNYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhDNYk36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_LH01EApjEeOsLLpAQm2Lzw/54" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNY036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhDNZk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNZk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhDNZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDNaE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNak36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhDNeU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDNbE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhDNfU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDNbk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDNcE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDNck36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhDNgU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDNdE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDNdk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNeU36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhDNek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDNe036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhDNfU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhDNfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhDNf036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhDNgE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhDNgU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhDNgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhDNg036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhDNhE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNhU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhDNhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDNh036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNiU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhDNhU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNjE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhDNhU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNj036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhDNkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDNkU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNk036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhDNj036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNlk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhDNj036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNmU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhDNj036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNnE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhDNnU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDNnk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNoE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhDNnE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNo036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhDNnE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNpk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhDNnE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNqU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhDNnE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNrE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhDNnE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNr036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhDNnE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNsk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhDNZk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNtU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhDNtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDNt036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDNuU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNu036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhDNvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDNvU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDNv036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNwU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhDNu036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNxE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhDNu036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNx036EeSS5u8wdxTIGg" name="Money">
          <eAnnotations xmi:id="_xhDNyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhDNyk36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_WOTPsApiEeOsLLpAQm2Lzw/53" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNy036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhDNzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDNzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDNzk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhDNz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDN0E36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDN0k36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhDN4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDN0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDN1E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhDN5U36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDN1k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDN2E36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDN2k36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhDN6U36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDN3E36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDN3k36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDN4U36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhDN4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDN4036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhDN5U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhDN5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhDN5036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhDN6E36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhDN6U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhDN6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhDN6036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhDN7E36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDN7U36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhDN7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDN7036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDN8U36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhDN7U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDN8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDN9E36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhDN7U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDN9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDN9036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhDN-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDN-U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDN-036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhDN9036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDN_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDN_k36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhDN9036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDN_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOAU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhDN9036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOBE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhDOBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDOBk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOCE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhDOBE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOCU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOC036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhDOBE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDODE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDODk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhDOBE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOEU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhDOBE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOEk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOFE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhDOBE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOF036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhDOBE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOGk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhDNzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOHU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhDOHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDOH036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDOIU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOI036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhDOJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDOJU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDOJ036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOKU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhDOI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOLE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhDOI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOL036EeSS5u8wdxTIGg" name="Money">
          <eAnnotations xmi:id="_xhDOME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhDOMk36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_3XvLMAphEeOsLLpAQm2Lzw/52" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOM036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhDONk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDONE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDONk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhDON036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDOOE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOOk36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhDOSU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOO036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDOPE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhDOTU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDOPk36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDOQE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDOQk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhDOUU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDORE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDORk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOSU36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhDOSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDOS036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhDOTU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhDOTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhDOT036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhDOUE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhDOUU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhDOUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhDOU036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhDOVE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOVU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhDOVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDOV036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOWU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhDOVU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOXE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhDOVU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOX036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhDOYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDOYU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOY036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhDOX036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOZk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhDOX036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOaU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhDOX036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDObE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhDObU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDObk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOcE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhDObE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOc036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhDObE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOdk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhDObE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOeU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhDObE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOfE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhDObE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOfU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOf036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhDObE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOgE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOgk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhDONk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOhU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhDOhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDOh036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDOiU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOi036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhDOjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDOjU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDOj036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOkU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhDOi036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOlE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhDOi036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOlU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhDOl036EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_z5Oc8AphEeOsLLpAQm2Lzw/51" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOmE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhDOm036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOm036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhDOnE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDOnU36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOn036EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhDOrk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDOoU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhDOsk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDOo036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDOpU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDOp036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhDOtk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDOqU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDOq036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOrk36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhDOr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDOsE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhDOsk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhDOs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhDOtE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhDOtU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhDOtk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhDOt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhDOuE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhDOuU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOuk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhDOu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDOvE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOvk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhDOuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOwU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhDOuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOxE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhDOxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDOxk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOyE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhDOxE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOy036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhDOxE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDOzk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhDOxE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDOz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDO0U36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhDO0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDO0036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDO1U36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhDO0U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDO1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDO2E36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhDO0U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDO2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDO2036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhDO0U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDO3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDO3k36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhDO0U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDO3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDO4U36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhDO0U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDO4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDO5E36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhDO0U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDO5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDO5036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhDOm036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDO6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDO6k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhDO6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDO7E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDO7k36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDO8E36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhDO8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDO8k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDO9E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDO9k36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhDO8E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDO9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDO-U36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhDO8E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDO-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDO_E36EeSS5u8wdxTIGg" name="MoneyType">
          <eAnnotations xmi:id="_xhDO_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//PrimitiveType"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhDO_036EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_lJNQIApfEeOsLLpAQm2Lzw/50" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPAE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhDPA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPA036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhDPBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPBU36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPB036EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhDPFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDPCU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhDPGk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDPC036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDPDU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDPD036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhDPHk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDPEU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPE036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPFk36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhDPF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPGE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhDPGk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhDPG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhDPHE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhDPHU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhDPHk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhDPH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhDPIE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhDPIU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPIk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhDPI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPJE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPJk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhDPIk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPKU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhDPIk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPLE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhDPLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPLk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPME36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhDPLE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPM036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhDPLE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPNk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhDPLE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPOU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhDPOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPO036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPPU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhDPOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPQE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhDPOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPQ036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhDPOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPRk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhDPOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPSU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhDPOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPTE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhDPOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPT036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhDPA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPUk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhDPU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPVE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDPVk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPWE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhDPWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPWk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPXE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPXk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhDPWE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPYU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhDPWE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPZE36EeSS5u8wdxTIGg" name="Object">
          <eAnnotations xmi:id="_xhDPZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPZ036EeSS5u8wdxTIGg" name="ObjectSet">
          <eAnnotations xmi:id="_xhDPaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPaU36EeSS5u8wdxTIGg" name="object" ordered="false" lowerBound="2" upperBound="-1" eType="_xhDPZE36EeSS5u8wdxTIGg" containment="true"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPbE36EeSS5u8wdxTIGg" name="Money">
          <eAnnotations xmi:id="_xhDPbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPbk36EeSS5u8wdxTIGg" name="base_DataType" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPcE36EeSS5u8wdxTIGg" name="base_Class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPck36EeSS5u8wdxTIGg" name="base_PrimitiveType" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//PrimitiveType"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPdE36EeSS5u8wdxTIGg" name="MoneyType">
          <eAnnotations xmi:id="_xhDPdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//PrimitiveType"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhDPd036EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_fMRXoApfEeOsLLpAQm2Lzw/49" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPeE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhDPe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPe036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhDPfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPfU36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPf036EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhDPjk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPgE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDPgU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhDPkk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDPg036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDPhU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDPh036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhDPlk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDPiU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPi036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPjk36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhDPj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPkE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhDPkk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhDPk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhDPlE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhDPlU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhDPlk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhDPl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhDPmE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhDPmU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPmk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhDPm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPnE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPnk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhDPmk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPoU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhDPmk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPpE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhDPpU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPpk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPqE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhDPpE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPq036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhDPpE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPrk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhDPpE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPsU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhDPsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPs036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPtU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhDPsU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPuE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhDPsU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPu036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhDPsU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPvk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhDPsU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPwU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhDPsU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPxE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhDPsU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPx036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhDPe036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDPyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDPyk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhDPy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDPzE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDPzk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDP0E36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhDP0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDP0k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDP1E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDzwE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhDP0E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDzwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDzw036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhDP0E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDzxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDzxk36EeSS5u8wdxTIGg" name="Object">
          <eAnnotations xmi:id="_xhDzx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDzyU36EeSS5u8wdxTIGg" name="ObjectSet">
          <eAnnotations xmi:id="_xhDzyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDzy036EeSS5u8wdxTIGg" name="object" ordered="false" lowerBound="2" upperBound="-1" eType="_xhDzxk36EeSS5u8wdxTIGg" containment="true"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDzzk36EeSS5u8wdxTIGg" name="Money">
          <eAnnotations xmi:id="_xhDzz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDz0E36EeSS5u8wdxTIGg" name="base_DataType" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDz0k36EeSS5u8wdxTIGg" name="base_Class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDz1E36EeSS5u8wdxTIGg" name="base_PrimitiveType" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//PrimitiveType"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhDz1k36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_LuDrcApfEeOsLLpAQm2Lzw/48" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDz1036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhDz2k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDz2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDz2k36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhDz2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDz3E36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDz3k36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhDz7U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDz3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDz4E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhDz8U36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDz4k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDz5E36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDz5k36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhDz9U36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhDz6E36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDz6k36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDz7U36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhDz7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDz7036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhDz8U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhDz8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhDz8036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhDz9E36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhDz9U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhDz9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhDz9036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhDz-E36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDz-U36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhDz-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhDz-036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhDz_U36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhDz-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhDz_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0AE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhDz-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0AU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0A036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhD0BE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0BU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0B036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhD0A036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0CE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0Ck36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhD0A036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0C036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0DU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhD0A036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0Dk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0EE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhD0EU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0Ek36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0FE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhD0EE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0FU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0F036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhD0EE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0GE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0Gk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhD0EE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0G036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0HU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhD0EE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0Hk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0IE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhD0EE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0IU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0I036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhD0EE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0JE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0Jk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhDz2k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0J036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0KU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhD0Kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0K036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD0LU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0L036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhD0ME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0MU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0M036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0NU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhD0L036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0Nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0OE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhD0L036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0OU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0O036EeSS5u8wdxTIGg" name="Object">
          <eAnnotations xmi:id="_xhD0PE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0Pk36EeSS5u8wdxTIGg" name="ObjectSet">
          <eAnnotations xmi:id="_xhD0P036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0QE36EeSS5u8wdxTIGg" name="object" ordered="false" lowerBound="2" upperBound="-1" eType="_xhD0O036EeSS5u8wdxTIGg" containment="true"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0Q036EeSS5u8wdxTIGg" name="Money">
          <eAnnotations xmi:id="_xhD0RE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0RU36EeSS5u8wdxTIGg" name="base_DataType" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0R036EeSS5u8wdxTIGg" name="base_Class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhD0SU36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_62X8oApeEeOsLLpAQm2Lzw/47" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0Sk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhD0TU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0S036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0TU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhD0Tk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0T036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0UU36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhD0YE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0Uk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD0U036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhD0ZE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD0VU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD0V036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD0WU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhD0aE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD0W036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0XU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0YE36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhD0YU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0Yk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhD0ZE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhD0ZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhD0Zk36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhD0Z036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhD0aE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhD0aU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhD0ak36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhD0a036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0bE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhD0bU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0bk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0cE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhD0bE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0cU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0c036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhD0bE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0dE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0dk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhD0d036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0eE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0ek36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhD0dk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0e036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0fU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhD0dk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0fk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0gE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhD0dk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0gU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0g036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhD0hE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0hU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0h036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhD0g036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0iE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0ik36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhD0g036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0i036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0jU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhD0g036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0jk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0kE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhD0g036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0kU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0k036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhD0g036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0lE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0lk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhD0g036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0l036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0mU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhD0TU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0mk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0nE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhD0nU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0nk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD0oE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0ok36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhD0o036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0pE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0pk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0qE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhD0ok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0qU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0q036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhD0ok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0rE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0rk36EeSS5u8wdxTIGg" name="Object">
          <eAnnotations xmi:id="_xhD0r036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0sU36EeSS5u8wdxTIGg" name="ObjectSet">
          <eAnnotations xmi:id="_xhD0sk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0s036EeSS5u8wdxTIGg" name="object" ordered="false" lowerBound="2" upperBound="-1" eType="_xhD0rk36EeSS5u8wdxTIGg" containment="true"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0tk36EeSS5u8wdxTIGg" name="Money">
          <eAnnotations xmi:id="_xhD0t036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0uE36EeSS5u8wdxTIGg" name="base_DataType" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0uk36EeSS5u8wdxTIGg" name="EMoney">
          <eAnnotations xmi:id="_xhD0u036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//Type"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhD0vU36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_JHLlQApeEeOsLLpAQm2Lzw/46" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0vk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhD0wU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0v036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0wU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhD0wk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0w036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0xU36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhD01E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0xk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD0x036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhD02E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD0yU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD0y036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD0zU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhD03E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD0z036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD00U36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD01E36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhD01U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD01k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhD02E36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhD02U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhD02k36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhD02036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhD03E36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhD03U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhD03k36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhD03036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD04E36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhD04U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD04k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD05E36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhD04E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD05U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD05036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhD04E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD06E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD06k36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhD06036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD07E36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD07k36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhD06k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD07036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD08U36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhD06k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD08k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD09E36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhD06k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD09U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD09036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhD0-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD0-U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0-036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhD09036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD0_k36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhD09036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD0_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1AU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhD09036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1Ak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1BE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhD09036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1BU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1B036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhD09036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1CE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1Ck36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhD09036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1C036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1DU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhD0wU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1Dk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1EE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhD1EU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1Ek36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD1FE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1Fk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhD1F036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1GE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1Gk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1HE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhD1Fk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1HU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1H036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhD1Fk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1IE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1Ik36EeSS5u8wdxTIGg" name="Object">
          <eAnnotations xmi:id="_xhD1I036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1JU36EeSS5u8wdxTIGg" name="ObjectSet">
          <eAnnotations xmi:id="_xhD1Jk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1J036EeSS5u8wdxTIGg" name="object" ordered="false" lowerBound="2" upperBound="-1" eType="_xhD1Ik36EeSS5u8wdxTIGg" containment="true"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1Kk36EeSS5u8wdxTIGg" name="Money">
          <eAnnotations xmi:id="_xhD1K036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1LE36EeSS5u8wdxTIGg" name="base_DataType" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhD1Lk36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_EBhTAApeEeOsLLpAQm2Lzw/45" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1L036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhD1Mk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1ME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1Mk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhD1M036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1NE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1Nk36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhD1RU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1N036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD1OE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhD1SU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD1Ok36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD1PE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD1Pk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhD1TU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD1QE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1Qk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1RU36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhD1Rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1R036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhD1SU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhD1Sk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhD1S036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhD1TE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhD1TU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhD1Tk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhD1T036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhD1UE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1UU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhD1Uk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1U036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1VU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhD1UU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1Vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1WE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhD1UU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1WU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1W036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhD1XE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1XU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1X036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhD1W036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1YE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1Yk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhD1W036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1Y036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1ZU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhD1W036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1Zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1aE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhD1aU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1ak36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1bE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhD1aE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1bU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1b036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhD1aE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1cE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1ck36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhD1aE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1c036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1dU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhD1aE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1dk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1eE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhD1aE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1eU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1e036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhD1aE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1fE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1fk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhD1Mk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1f036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1gU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhD1gk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1g036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD1hU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1h036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhD1iE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1iU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1i036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1jU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhD1h036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1jk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1kE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhD1h036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1kU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1k036EeSS5u8wdxTIGg" name="Object">
          <eAnnotations xmi:id="_xhD1lE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1lk36EeSS5u8wdxTIGg" name="ObjectSet">
          <eAnnotations xmi:id="_xhD1l036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1mE36EeSS5u8wdxTIGg" name="object" ordered="false" lowerBound="2" upperBound="-1" eType="_xhD1k036EeSS5u8wdxTIGg" containment="true"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1m036EeSS5u8wdxTIGg" name="Money">
          <eAnnotations xmi:id="_xhD1nE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhD1nU36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_vMVz4ApdEeOsLLpAQm2Lzw/44" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1nk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhD1oU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1n036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1oU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhD1ok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1o036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1pU36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhD1tE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD1p036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhD1uE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD1qU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD1q036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD1rU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhD1vE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD1r036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1sU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1tE36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhD1tU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1tk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhD1uE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhD1uU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhD1uk36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhD1u036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhD1vE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhD1vU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhD1vk36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhD1v036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1wE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhD1wU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1wk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1xE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhD1wE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1xU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1x036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhD1wE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1yE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1yk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhD1y036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1zE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1zk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhD1yk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1z036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD10U36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhD1yk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD10k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD11E36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhD1yk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD11U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD11036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhD12E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD12U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD12036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhD11036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD13E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD13k36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhD11036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD13036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD14U36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhD11036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD14k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD15E36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhD11036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD15U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD15036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhD11036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD16E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD16k36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhD11036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD16036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD17U36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhD1oU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD17k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD18E36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhD18U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD18k36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD19E36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD19k36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhD19036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1-E36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD1-k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1_E36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhD19k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD1_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD1_036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhD19k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2AE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2Ak36EeSS5u8wdxTIGg" name="Money">
          <eAnnotations xmi:id="_xhD2A036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2BU36EeSS5u8wdxTIGg" name="Object">
          <eAnnotations xmi:id="_xhD2Bk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2CE36EeSS5u8wdxTIGg" name="ObjectSet">
          <eAnnotations xmi:id="_xhD2CU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD2Ck36EeSS5u8wdxTIGg" name="object" ordered="false" lowerBound="2" upperBound="-1" eType="_xhD2BU36EeSS5u8wdxTIGg" containment="true"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhD2DU36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_hWjIwApdEeOsLLpAQm2Lzw/43" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2Dk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhD2EU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2D036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2EU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhD2Ek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD2E036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2FU36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhD2JE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2Fk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD2F036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhD2KE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD2GU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD2G036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD2HU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhD2LE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD2H036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD2IU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2JE36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhD2JU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD2Jk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhD2KE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhD2KU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhD2Kk36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhD2K036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhD2LE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhD2LU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhD2Lk36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhD2L036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2ME36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhD2MU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD2Mk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2NE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhD2ME36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2NU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2N036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhD2ME36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2OE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2Ok36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhD2O036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD2PE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2Pk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhD2Ok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2P036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2QU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhD2Ok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2Qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2RE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhD2Ok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2RU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2R036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhD2SE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD2SU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2S036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhD2R036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2TE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2Tk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhD2R036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2T036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2UU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhD2R036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2Uk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2VE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhD2R036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2VU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2V036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhD2R036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2WE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2Wk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhD2R036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2W036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2XU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhD2EU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2Xk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2YE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhD2YU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD2Yk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD2ZE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2Zk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhD2Z036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD2aE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD2ak36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2bE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhD2Zk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2bU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2b036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhD2Zk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2cE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2ck36EeSS5u8wdxTIGg" name="Money">
          <eAnnotations xmi:id="_xhD2c036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2dU36EeSS5u8wdxTIGg" name="Object">
          <eAnnotations xmi:id="_xhD2dk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhD2eE36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_KRTrgApdEeOsLLpAQm2Lzw/42" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2eU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhD2fE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2ek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2fE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhD2fU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD2fk36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2gE36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhD2j036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2gU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD2gk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhD2k036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD2hE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD2hk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD2iE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhD2l036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhD2ik36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD2jE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2j036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhD2kE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD2kU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhD2k036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhD2lE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhD2lU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhD2lk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhD2l036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhD2mE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhD2mU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhD2mk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2m036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhD2nE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD2nU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2n036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhD2m036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2oE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2ok36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhD2m036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2o036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2pU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhD2pk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhD2p036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2qU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhD2pU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2qk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2rE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhD2pU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2rU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhD2r036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhD2pU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhD2sE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEa0U36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhEa0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEa0036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEa1U36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhEa0U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEa1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEa2E36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhEa0U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEa2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEa2036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhEa0U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEa3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEa3k36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhEa0U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEa3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEa4U36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhEa0U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEa4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEa5E36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhEa0U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEa5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEa5036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhD2fE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEa6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEa6k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhEa6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEa7E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEa7k36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEa8E36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhEa8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEa8k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEa9E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEa9k36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhEa8E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEa9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEa-U36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhEa8E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEa-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEa_E36EeSS5u8wdxTIGg" name="Money">
          <eAnnotations xmi:id="_xhEa_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhEa_036EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_TZIBEApcEeOsLLpAQm2Lzw/41" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbAE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhEbA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbA036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhEbBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEbBU36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbB036EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhEbFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEbCU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhEbGk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEbC036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEbDU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEbD036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhEbHk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEbEU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEbE036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbFk36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhEbF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEbGE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhEbGk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhEbG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhEbHE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhEbHU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhEbHk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhEbH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhEbIE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhEbIU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbIk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhEbI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEbJE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbJk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhEbIk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbKU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhEbIk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbLE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhEbLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEbLk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbME36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhEbLE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbM036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhEbLE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbNk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhEbLE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbOU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhEbOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEbO036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbPU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhEbOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbPk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbQE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhEbOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbQU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbQ036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhEbOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbRE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbRk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhEbOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbSU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhEbOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbTE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhEbOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbT036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhEbA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbUk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhEbU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEbVE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEbVk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbWE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhEbWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEbWk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEbXE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbXk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhEbWE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbYU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhEbWE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbZE36EeSS5u8wdxTIGg" name="Money">
          <eAnnotations xmi:id="_xhEbZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//DataType"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhEbZ036EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_C3XJ0ApaEeOsLLpAQm2Lzw/40" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbaE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhEba036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEba036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhEbbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEbbU36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbb036EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhEbfk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEbcU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhEbgk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEbc036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEbdU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEbd036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhEbhk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEbeU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEbe036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbfk36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhEbf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEbgE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhEbgk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhEbg036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhEbhE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhEbhU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhEbhk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhEbh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhEbiE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhEbiU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbik36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhEbi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEbjE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbjk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhEbik36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbkU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhEbik36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEblE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhEblU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEblk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbmE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhEblE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbm036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhEblE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbnE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbnk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhEblE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbn036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEboU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhEbok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEbo036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbpU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhEboU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbpk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbqE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhEboU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbq036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhEboU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbrk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhEboU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbsU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhEboU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbtE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhEboU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbt036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhEba036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbuk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhEbu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEbvE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEbvk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbwE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhEbwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEbwk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEbxE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbxk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhEbwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbx036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbyU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhEbwE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhEbzE36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_cQMPwApZEeOsLLpAQm2Lzw/39" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEbzU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhEb0E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEbzk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEb0E36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhEb0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEb0k36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEb1E36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhEb4036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEb1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEb1k36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhEb5036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEb2E36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEb2k36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEb3E36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhEb6036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEb3k36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEb4E36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEb4036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhEb5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEb5U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhEb5036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhEb6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhEb6U36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhEb6k36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhEb6036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhEb7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhEb7U36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhEb7k36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEb7036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhEb8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEb8U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEb8036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhEb7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEb9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEb9k36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhEb7036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEb9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEb-U36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhEb-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEb-036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEb_U36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhEb-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEb_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcAE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhEb-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcA036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhEb-U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcBk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhEcB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEcCE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcCk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhEcBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcDU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhEcBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcEE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhEcBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcE036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhEcBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcFk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhEcBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcGU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhEcBk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcHE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhEb0E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcH036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhEcIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEcIU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEcI036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcJU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhEcJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEcJ036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEcKU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcK036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhEcJU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcLk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhEcJU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhEcMU36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_N1BmsApZEeOsLLpAQm2Lzw/38" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcMk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhEcNU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcNU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhEcNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEcN036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcOU36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhEcSE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEcO036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhEcTE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEcPU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEcP036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEcQU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhEcUE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEcQ036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEcRU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcSE36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhEcSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEcSk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhEcTE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhEcTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhEcTk36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhEcT036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhEcUE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhEcUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhEcUk36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhEcU036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcVE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhEcVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEcVk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcWE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhEcVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcW036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhEcVE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcXk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhEcX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEcYE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEcYk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcZE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhEcXk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcZ036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhEcXk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcak36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhEcXk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEca036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcbU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhEcbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEcb036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEccU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhEcbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcdE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhEcbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcd036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhEcbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEceE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcek36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhEcbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEce036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcfU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhEcbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcgE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhEcbU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcg036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhEcNU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEchE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEchk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhEch036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEciE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEcik36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcjE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhEcjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEcjk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEckE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEckk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhEcjE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEck036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEclU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhEcjE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEclk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhEcmE36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_YEYzIApYEeOsLLpAQm2Lzw/37" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcmU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhEcnE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcnE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhEcnU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEcnk36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcoE36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhEcr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEcok36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhEcs036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEcpE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEcpk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEcqE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhEct036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEcqk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEcrE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcr036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhEcsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEcsU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhEcs036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhEctE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhEctU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhEctk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhEct036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhEcuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhEcuU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhEcuk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcu036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhEcvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEcvU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcv036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhEcu036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcwk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhEcu036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcxU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhEcxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEcx036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEcyU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEcy036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhEcxU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEczE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEczk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhEcxU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEcz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEc0U36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhEcxU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEc0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEc1E36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhEc1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEc1k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEc2E36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhEc1E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEc2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEc2036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhEc1E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEc3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEc3k36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhEc1E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEc3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEc4U36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhEc1E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEc4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEc5E36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhEc1E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEc5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEc5036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhEc1E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEc6E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEc6k36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhEcnE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEc6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEc7U36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhEc7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEc7036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEc8U36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEc8036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhEc9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEc9U36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEc9036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEc-U36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhEc8036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEc-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEc_E36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhEc8036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEc_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhEc_036EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_O-j3EApYEeOsLLpAQm2Lzw/36" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdAE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhEdA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdA036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhEdBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdBU36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdB036EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhEdFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEdCU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhEdGk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEdC036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEdDU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEdD036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhEdHk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEdEU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdE036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdFk36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhEdF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdGE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhEdGk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhEdG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhEdHE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhEdHU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhEdHk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhEdH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhEdIE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhEdIU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdIk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhEdI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdJE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdJk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhEdIk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdKU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhEdIk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdLE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhEdLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdLk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdME36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdMk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhEdLE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdNU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhEdLE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdOE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhEdLE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdO036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhEdPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdPU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdP036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhEdO036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdQk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhEdO036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdRU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhEdO036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdSE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhEdO036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdS036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhEdO036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdTk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhEdO036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdUU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhEdA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdVE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhEdVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdVk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEdWE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdWk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhEdW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdXE36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdXk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdYE36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhEdWk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdY036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhEdWk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhEdZk36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_K_eLUApYEeOsLLpAQm2Lzw/35" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdZ036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhEdak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdak36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhEda036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdbE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdbk36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhEdfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEdcE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhEdgU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEdck36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEddE36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEddk36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhEdhU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEdeE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdek36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdfU36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhEdfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdf036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhEdgU36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhEdgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhEdg036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhEdhE36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhEdhU36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhEdhk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhEdh036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhEdiE36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdiU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhEdik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdi036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdjU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhEdiU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdkE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhEdiU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdk036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhEdlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdlU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdl036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdmU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhEdk036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdnE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhEdk036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdnU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdn036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhEdk036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdok36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhEdo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdpE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdpk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhEdok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdqU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhEdok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdrE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhEdok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdr036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhEdok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdsk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhEdok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEds036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdtU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhEdok36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdtk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEduE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhEdak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEduU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdu036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhEdvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdvU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEdv036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdwU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhEdwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdw036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEdxU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdx036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhEdwU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdyk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhEdwU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdy036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhEdzU36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_CA_0cApYEeOsLLpAQm2Lzw/34" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEdzk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhEd0U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEdz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEd0U36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhEd0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEd0036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEd1U36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhEd5E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEd1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEd1036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhEd6E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEd2U36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEd2036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEd3U36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhEd7E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhEd3036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEd4U36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEd5E36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhEd5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEd5k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhEd6E36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhEd6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhEd6k36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhEd6036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhEd7E36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhEd7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhEd7k36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhEd7036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEd8E36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhEd8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEd8k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEd9E36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhEd8E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEd9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEd9036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhEd8E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEd-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEd-k36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhEd-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEd_E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhEd_k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEeAE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhEd-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEeAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEeA036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhEd-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEeBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhEeBk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhEd-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhEeB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFB4U36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhFB4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFB4036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFB5U36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhFB4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFB5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFB6E36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhFB4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFB6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFB6036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhFB4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFB7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFB7k36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhFB4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFB7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFB8U36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhFB4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFB8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFB9E36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhFB4U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFB9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFB9036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhEd0U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFB-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFB-k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhFB-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFB_E36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFB_k36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCAE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhFCAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCAk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCBE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCBk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhFCAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCCU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhFCAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhFCDE36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/__lT1IApXEeOsLLpAQm2Lzw/33" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCDU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhFCEE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCEE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhFCEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCEk36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCFE36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhFCI036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFCFk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhFCJ036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFCGE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFCGk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFCHE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhFCK036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFCHk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCIE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCI036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhFCJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCJU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFCJ036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhFCKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFCKU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhFCKk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFCK036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhFCLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFCLU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhFCLk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCL036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhFCME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCMU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCM036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhFCL036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCNk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhFCL036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCOU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhFCOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCO036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCPU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCP036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhFCOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCQk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhFCOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCRU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhFCOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCSE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhFCSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCSk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCTE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhFCSE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCTU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCT036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhFCSE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCUk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhFCSE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCVU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhFCSE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCWE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhFCSE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCW036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhFCSE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCXk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhFCEE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCYU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhFCYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCY036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFCZU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCZ036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhFCaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCaU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCa036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCbU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhFCZ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCcE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhFCZ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhFCc036EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_Lqrg8ApXEeOsLLpAQm2Lzw/32" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCdE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhFCd036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCd036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhFCeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCeU36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCe036EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhFCik36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFCfU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhFCjk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFCf036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFCgU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFCg036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhFCkk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFChU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCh036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCik36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhFCi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCjE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFCjk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhFCj036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFCkE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhFCkU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFCkk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhFCk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFClE36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhFClU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFClk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhFCl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCmE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCmk36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhFClk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCnU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhFClk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCnk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCoE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhFCoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCok36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCpE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCpk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhFCoE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCqU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhFCoE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCrE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhFCoE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCr036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhFCsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCsU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCs036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhFCr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCtE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCtk36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhFCr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCuU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhFCr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCuk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCvE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhFCr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCvU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCv036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhFCr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCwk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhFCr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCxU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhFCd036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFCxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCyE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhFCyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFCyk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFCzE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFCzk36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhFCz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFC0E36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFC0k36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFC1E36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhFCzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFC1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFC1036EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhFCzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFC2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhFC2k36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_-vSokApWEeOsLLpAQm2Lzw/31" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFC2036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhFC3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFC3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFC3k36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhFC3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFC4E36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFC4k36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhFC8U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFC4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFC5E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhFC9U36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFC5k36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFC6E36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFC6k36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhFC-U36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFC7E36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFC7k36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFC8U36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhFC8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFC8036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFC9U36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhFC9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFC9036EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhFC-E36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFC-U36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhFC-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFC-036EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhFC_E36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFC_U36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhFC_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFC_036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDAU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhFC_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDBE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhFC_U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDB036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhFDCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDCU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDC036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDDU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhFDB036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDEE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhFDB036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDE036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhFDB036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDFk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhFDF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDGE36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDGk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhFDFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDHU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhFDFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDIE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhFDFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDI036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhFDFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDJE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDJk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhFDFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDKU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhFDFk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDKk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDLE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhFC3k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDL036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhFDME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDMU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFDM036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDNU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhFDNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDN036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDOU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDO036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhFDNU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDPk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhFDNU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhFDQU36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_nK-psApWEeOsLLpAQm2Lzw/30" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDQk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhFDRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDRU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhFDRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDR036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDSU36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhFDWE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFDS036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhFDXE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFDTU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFDT036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFDUU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhFDYE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFDU036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDVU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDWE36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhFDWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDWk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFDXE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhFDXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFDXk36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhFDX036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFDYE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhFDYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFDYk36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhFDY036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDZE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhFDZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDZk36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDaE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhFDZE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDa036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhFDZE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDbE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDbk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhFDb036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDcE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDck36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDdE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhFDbk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDd036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhFDbk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDeE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDek36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhFDbk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDfU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhFDfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDf036EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDgU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhFDfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDhE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhFDfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDh036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhFDfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDik36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhFDfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDjU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhFDfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDkE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhFDfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDk036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhFDRU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDlE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDlk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhFDl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDmE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFDmk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDnE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhFDnU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDnk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDoE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDok36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhFDnE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDo036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDpU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhFDnE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDpk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhFDqE36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_QUVpIApWEeOsLLpAQm2Lzw/29" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDqU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhFDrE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDrE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhFDrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDrk36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDsE36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhFDv036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFDsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFDsk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhFDw036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFDtE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFDtk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFDuE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhFDx036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFDuk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDvE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDv036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhFDwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDwU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFDw036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhFDxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFDxU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhFDxk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFDx036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhFDyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFDyU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhFDyk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDy036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhFDzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFDzU36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFDz036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhFDy036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFD0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFD0k36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhFDy036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFD0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFD1U36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhFD1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFD1036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFD2U36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFD2036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhFD1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFD3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFD3k36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhFD1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFD3036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFD4U36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhFD1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFD4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFD5E36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhFD5U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFD5k36EeSS5u8wdxTIGg" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFD6E36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhFD5E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFD6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFD6036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhFD5E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFD7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFD7k36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhFD5E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFD7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFD8U36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhFD5E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFD8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFD9E36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhFD5E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFD9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFD9036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhFD5E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFD-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFD-k36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhFDrE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFD-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFD_U36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhFD_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFD_036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFEAU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEA036EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhFEBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEBU36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEB036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFECU36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhFEA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFECk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEDE36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhFEA036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhFED036EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_HimWcApFEeOuJJkXVrUtsQ/28" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEEE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhFEE036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEE036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhFEFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEFU36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEF036EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhFEJk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFEGU36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhFEKk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFEG036EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFEHU36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFEH036EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhFELk36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFEIU36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEI036EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEJk36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhFEJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEKE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFEKk36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhFEK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFELE36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhFELU36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFELk36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhFEL036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFEME36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhFEMU36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEMk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhFEM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFENE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhFEMk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFENU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFENk36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEOU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhFEMk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEO036EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEPk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhFEP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEQE36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEQk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFERE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhFEPk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFERU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFER036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhFEPk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFESE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFESk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhFEPk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFES036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFETU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhFETk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFET036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEUU36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEU036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEVU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhFETU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEWE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhFETU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEW036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhFETU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEXE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEXk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhFETU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEYU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhFETU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEZE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhFETU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEZ036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhFEE036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEak36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhFEa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEbE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFEbk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEcE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhFEcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEck36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEdE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEdk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhFEcE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEeU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhFEcE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEek36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhFEfE36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_FQmysAilEeOcM621vUJLnw/27" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEfU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhFEgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEgE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhFEgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEgk36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEhE36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhFEk036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEhU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFEhk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhFEl036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFEiE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFEik36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFEjE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhFEm036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFEjk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEkE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEk036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhFElE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFElU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFEl036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhFEmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFEmU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhFEmk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFEm036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhFEnE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFEnU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhFEnk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEn036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhFEoE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEoU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhFEn036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEok36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEo036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEpk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhFEn036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEqE36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEq036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhFErE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFErU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEr036EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEsU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhFEq036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEtE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhFEq036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEt036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhFEq036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEuE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEuk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhFEu036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEvE36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEvk36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFEwE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEwk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhFEuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFExU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhFEuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFExk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEyE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhFEuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEy036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhFEuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFEzk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhFEuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFEz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFE0U36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhFEuk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFE0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFE1E36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhFEgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFE1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFE1036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhFE2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFE2U36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFE2036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFE3U36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhFE3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFE3036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFE4U36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFE4036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhFE3U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFE5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFE5k36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhFE3U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFE5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhFE6U36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_EoC14AaMEeO0mcsjvlKFSA/26" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFE6k36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhFE7U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFE6036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFE7U36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhFE7k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFE7036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFE8U36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhFo8036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFE8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFE8036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhFo9036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFE9U36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFE9036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFE-U36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhFo-036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFE-036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFo8E36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFo8036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhFo9E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFo9U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFo9036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhFo-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFo-U36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhFo-k36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFo-036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhFo_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFo_U36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhFo_k36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFo_036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhFpAE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpAU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhFo_036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpA036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpBk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhFo_036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpB036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpCE36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpC036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhFpDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpDU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpD036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhFpC036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpEE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpEk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhFpC036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpFU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhFpC036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpFk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpGE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhFpGU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpGk36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpHE36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpHk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhFpGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpIU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhFpGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpJE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhFpGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpJ036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhFpGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpKk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhFpGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpLU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhFpGE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpME36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhFE7U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpM036EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhFpNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpNU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFpN036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpOU36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhFpOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpO036EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Expression"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpPU36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpP036EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhFpOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpQk36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhFpOU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhFpRU36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_--_isAaLEeO0mcsjvlKFSA/25" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpRk36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhFpSU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpSU36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhFpSk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpS036EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpTU36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhFpXE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFpT036EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhFpYE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFpUU36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFpU036EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFpVU36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhFpZE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFpV036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpWU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpXE36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhFpXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpXk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFpYE36EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhFpYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFpYk36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhFpY036EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFpZE36EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhFpZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFpZk36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhFpZ036EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpaE36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhFpaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpak36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhFpaE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpbE36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpb036EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhFpaE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpcE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpcU36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpdE36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhFpdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpdk36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpeE36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhFpdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpeU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpe036EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhFpdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpfE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpfk36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhFpdE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpgU36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhFpgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpg036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFphU36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFph036EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhFpgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpiE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpik36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhFpgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpi036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpjU36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhFpgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpkE36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhFpgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpk036EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhFpgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFplE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFplk36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhFpgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpmU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhFpSU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpmk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpnE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhFpnU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpnk36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpoE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhFpoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpok36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Expression"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFppE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFppk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhFpoE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpqU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhFpoE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFpqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhFprE36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_tOqG4AaGEeO3jd8H9P4Pcg/24" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFprU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhFpsE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFprk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpsE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhFpsU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpsk36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFptE36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhFpw036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFptU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFptk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhFpx036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFpuE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFpuk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFpvE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhFpy036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFpvk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpwE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpw036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhFpxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFpxU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFpx036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhFpyE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFpyU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhFpyk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFpy036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhFpzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFpzU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhFpzk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFpz036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhFp0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFp0U36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhFpz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFp0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFp0036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFp1k36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhFpz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFp1036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFp2E36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFp2036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhFp3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFp3U36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFp3036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhFp2036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFp4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFp4k36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhFp2036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFp4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFp5U36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhFp2036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFp5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFp6E36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhFp6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFp6k36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFp7E36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFp7k36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhFp6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFp7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFp8U36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhFp6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFp8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFp9E36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhFp6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFp9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFp9036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhFp6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFp-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFp-k36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhFp6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFp-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFp_U36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhFp6E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFp_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqAE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhFpsE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqA036EeSS5u8wdxTIGg" name="Input_Context">
          <eAnnotations xmi:id="_xhFqBE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhFqBU36EeSS5u8wdxTIGg" source="duplicates">
            <contents xmi:type="ecore:EReference" xmi:id="_xhFqBk36EeSS5u8wdxTIGg" name="activity" ordered="false" upperBound="-1">
              <eAnnotations xmi:id="_xhFqB036EeSS5u8wdxTIGg" source="redefines">
                <references xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityNode/activity"/>
              </eAnnotations>
              <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
            </contents>
          </eAnnotations>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFqCU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqC036EeSS5u8wdxTIGg" name="context" ordered="false" lowerBound="1" eType="_xhFqDk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqDk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhFqD036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqEE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhFqEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqEk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Expression"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqFE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqFk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhFqEE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqF036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqGU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhFqEE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhFqHE36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_fIInMAZ9EeOcdYCs3l6XnA/23" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqHU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhFqIE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqHk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqIE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhFqIU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqIk36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqJE36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhFqM036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFqJk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhFqN036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFqKE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFqKk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFqLE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhFqO036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFqLk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqME36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqM036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhFqNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqNU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFqN036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhFqOE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFqOU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhFqOk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFqO036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhFqPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFqPU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhFqPk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqP036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhFqQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqQU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhFqP036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqQ036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqRk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhFqP036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqR036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqSE36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqS036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhFqTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqTU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqT036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhFqS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqUE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqUk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhFqS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqU036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqVU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhFqS036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqVk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqWE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhFqWU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqWk36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqXE36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqXk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhFqWE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqYU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhFqWE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqYk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqZE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhFqWE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqZU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqZ036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhFqWE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqaE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqak36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhFqWE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqbU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhFqWE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqcE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhFqIE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqc036EeSS5u8wdxTIGg" name="Input_Context">
          <eAnnotations xmi:id="_xhFqdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhFqdU36EeSS5u8wdxTIGg" source="duplicates">
            <contents xmi:type="ecore:EReference" xmi:id="_xhFqdk36EeSS5u8wdxTIGg" name="activity" ordered="false" upperBound="-1">
              <eAnnotations xmi:id="_xhFqd036EeSS5u8wdxTIGg" source="redefines">
                <references xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityNode/activity"/>
              </eAnnotations>
              <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
            </contents>
          </eAnnotations>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFqeU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqe036EeSS5u8wdxTIGg" name="context" ordered="false" lowerBound="1" eType="_xhFqfk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqfk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhFqf036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqgE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhFqgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqgk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqhE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqhk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhFqgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqh036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqiU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhFqgE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhFqjE36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_GFEn0AZ8EeOcdYCs3l6XnA/22" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqjU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhFqkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqkE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhFqkU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqkk36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqlE36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhFqo036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqlU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFqlk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhFqp036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFqmE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFqmk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFqnE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhFqq036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFqnk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqoE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqo036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhFqpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqpU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFqp036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhFqqE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFqqU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhFqqk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFqq036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhFqrE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFqrU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhFqrk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqr036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhFqsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqsU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhFqr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqs036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqtk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhFqr036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqt036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFquE36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqu036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhFqvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqvU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqv036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhFqu036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqwE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqwk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhFqu036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqxU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhFqu036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqyE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhFqyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqyk36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFqzE36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFqzk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhFqyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFqz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFq0U36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhFqyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFq0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFq1E36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhFqyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFq1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFq1036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhFqyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFq2E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFq2k36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhFqyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFq2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFq3U36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhFqyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFq3k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFq4E36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhFqkE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFq4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFq4036EeSS5u8wdxTIGg" name="Input_Context">
          <eAnnotations xmi:id="_xhFq5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhFq5U36EeSS5u8wdxTIGg" source="duplicates">
            <contents xmi:type="ecore:EReference" xmi:id="_xhFq5k36EeSS5u8wdxTIGg" name="activity" ordered="false" upperBound="-1">
              <eAnnotations xmi:id="_xhFq5036EeSS5u8wdxTIGg" source="redefines">
                <references xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityNode/activity"/>
              </eAnnotations>
              <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
            </contents>
          </eAnnotations>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFq6U36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFq6036EeSS5u8wdxTIGg" name="context" ordered="false" lowerBound="1" eType="_xhFq7k36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFq7k36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhFq7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFq8E36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhFq8U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFq8k36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFq9E36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFq9k36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhFq8E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFq9036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFq-U36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhFq8E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFq-k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhFq_E36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_fHjKoAZ4EeOcdYCs3l6XnA/21" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFq_U36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhFrAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFq_k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrAE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhFrAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFrAk36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrBE36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhFrE036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFrBk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhFrF036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFrCE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFrCk36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFrDE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhFrG036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFrDk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFrEE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrE036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhFrFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFrFU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFrF036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhFrGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFrGU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhFrGk36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFrG036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhFrHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFrHU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhFrHk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrH036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhFrIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrIU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhFrH036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFrI036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrJk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhFrH036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrJ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFrKE36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrK036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhFrLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFrLU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrL036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhFrK036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrMk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhFrK036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrM036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrNU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhFrK036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrOE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhFrOU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFrOk36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFrPE36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrPk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhFrOE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrQU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhFrOE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrQk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrRE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhFrOE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrR036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhFrOE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrSk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhFrOE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrTU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhFrOE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrUE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhFrAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrU036EeSS5u8wdxTIGg" name="Input_Context">
          <eAnnotations xmi:id="_xhFrVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhFrVU36EeSS5u8wdxTIGg" source="duplicates">
            <contents xmi:type="ecore:EReference" xmi:id="_xhFrVk36EeSS5u8wdxTIGg" name="activity" ordered="false" upperBound="-1">
              <eAnnotations xmi:id="_xhFrV036EeSS5u8wdxTIGg" source="redefines">
                <references xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityNode/activity"/>
              </eAnnotations>
              <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
            </contents>
          </eAnnotations>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFrWU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFrW036EeSS5u8wdxTIGg" name="context" ordered="false" lowerBound="1" eType="_xhFrXk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrXk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhFrX036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrYE36EeSS5u8wdxTIGg" name="logical_expression">
          <eAnnotations xmi:id="_xhFrYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHePU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFrYk36EeSS5u8wdxTIGg" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFrZE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrZk36EeSS5u8wdxTIGg" name="formula" eSuperTypes="_xhFrYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeUk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFraU36EeSS5u8wdxTIGg" name="constraint" eSuperTypes="_xhFrYE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeZE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhFrbE36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_uciNEAZ3EeOcdYCs3l6XnA/20" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrbU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhFrcE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrbk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrcE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhFrcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFrck36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrdE36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhFrg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrdU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFrdk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" eType="_xhFrh036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFreE36EeSS5u8wdxTIGg" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFrek36EeSS5u8wdxTIGg" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFrfE36EeSS5u8wdxTIGg" name="type" ordered="false" eType="_xhFri036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFrfk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFrgE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrg036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhFrhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFrhU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFrh036EeSS5u8wdxTIGg" name="Agent_Type">
          <eAnnotations xmi:id="_xhFriE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeJU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFriU36EeSS5u8wdxTIGg" name="OFFICER"/>
          <eLiterals xmi:id="_xhFrik36EeSS5u8wdxTIGg" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xhFri036EeSS5u8wdxTIGg" name="Query_Type">
          <eAnnotations xmi:id="_xhFrjE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhHeMU36EeSS5u8wdxTIGg"/>
          <eLiterals xmi:id="_xhFrjU36EeSS5u8wdxTIGg" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_xhFrjk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrj036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhFrkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrkU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhFrj036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFrk036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrlk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhFrj036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrl036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFrmE36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrm036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhFrnE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFrnU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrn036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhFrm036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFroE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrok36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhFrm036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFro036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrpU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhFrm036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrpk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrqE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhFrqU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFrqk36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFrrE36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrrk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhFrqE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrr036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrsU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhFrqE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrsk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrtE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhFrqE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrtU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrt036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhFrqE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFruE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFruk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhFrqE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFru036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrvU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhFrqE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrvk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrwE36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhFrcE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFrwU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrw036EeSS5u8wdxTIGg" name="Input_Context">
          <eAnnotations xmi:id="_xhFrxE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhFrxU36EeSS5u8wdxTIGg" source="duplicates">
            <contents xmi:type="ecore:EReference" xmi:id="_xhFrxk36EeSS5u8wdxTIGg" name="activity" ordered="false" upperBound="-1">
              <eAnnotations xmi:id="_xhFrx036EeSS5u8wdxTIGg" source="redefines">
                <references xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityNode/activity"/>
              </eAnnotations>
              <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
            </contents>
          </eAnnotations>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFryU36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFry036EeSS5u8wdxTIGg" name="context" ordered="false" lowerBound="1" eType="_xhFrzk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFrzk36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhFrz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhFr0E36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_7io9IAZ2EeOcdYCs3l6XnA/19" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFr0U36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhFr1E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFr0k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFr1E36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhFr1U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFr1k36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFr2E36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhFr2036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFr2U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFr2036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhFr3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFr3U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFr3036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhFr4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFr4U36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhFr3036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFr4k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFr4036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFr5k36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhFr3036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFr5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFr6E36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFr6036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhFr7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFr7U36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFr7036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhFr6036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFr8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFr8k36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhFr6036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFr8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFr9U36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhFr6036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFr9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFr-E36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhFr-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFr-k36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFr_E36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFr_k36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhFr-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFr_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFsAU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhFr-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFsAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFsBE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhFr-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFsBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFsB036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhFr-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFsCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFsCk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhFr-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFsC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFsDU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhFr-E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFsDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFsEE36EeSS5u8wdxTIGg" name="StructuredComment">
          <eAnnotations xmi:id="_xhFsEU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFsEk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFsFE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFsFk36EeSS5u8wdxTIGg" name="question" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFsGE36EeSS5u8wdxTIGg" name="source" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFsGk36EeSS5u8wdxTIGg" name="type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFsHE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFsH036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhFr1E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFsIE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFsIk36EeSS5u8wdxTIGg" name="Input_Context">
          <eAnnotations xmi:id="_xhFsI036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhFsJE36EeSS5u8wdxTIGg" source="duplicates">
            <contents xmi:type="ecore:EReference" xmi:id="_xhFsJU36EeSS5u8wdxTIGg" name="activity" ordered="false" upperBound="-1">
              <eAnnotations xmi:id="_xhFsJk36EeSS5u8wdxTIGg" source="redefines">
                <references xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityNode/activity"/>
              </eAnnotations>
              <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
            </contents>
          </eAnnotations>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhFsKE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhFsKk36EeSS5u8wdxTIGg" name="context" ordered="false" lowerBound="1" eType="_xhFsLU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFsLU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhFsLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhFsL036EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_LzWoAAZ2EeOcdYCs3l6XnA/18" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhFsME36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhGQAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhFsMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQAE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhGQAU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQAk36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQBE36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhGQB036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQB036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhGQCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQCU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQC036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhGQDE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQDU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhGQC036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQDk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQD036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQEk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhGQC036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQE036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQFE36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQF036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhGQGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQGU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQG036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhGQF036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQHE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQHk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhGQF036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQIU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhGQF036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQJE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhGQJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQJk36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQKE36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQKk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhGQJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQK036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQLU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhGQJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQLk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQME36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhGQJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQMU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQM036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhGQJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQNE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQNk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhGQJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQOU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhGQJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQOk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQPE36EeSS5u8wdxTIGg" name="StructuredComment">
          <eAnnotations xmi:id="_xhGQPU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQPk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGQQE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGQQk36EeSS5u8wdxTIGg" name="question" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGQRE36EeSS5u8wdxTIGg" name="source" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGQRk36EeSS5u8wdxTIGg" name="type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGQSE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQS036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhGQAE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQTE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQTk36EeSS5u8wdxTIGg" name="Input_Context">
          <eAnnotations xmi:id="_xhGQT036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhGQUE36EeSS5u8wdxTIGg" source="duplicates">
            <contents xmi:type="ecore:EReference" xmi:id="_xhGQUU36EeSS5u8wdxTIGg" name="activity" ordered="false" upperBound="-1">
              <eAnnotations xmi:id="_xhGQUk36EeSS5u8wdxTIGg" source="redefines">
                <references xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityNode/activity"/>
              </eAnnotations>
              <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
            </contents>
          </eAnnotations>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGQVE36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQVk36EeSS5u8wdxTIGg" name="context" ordered="false" lowerBound="1" eType="_xhGQWU36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQWU36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhGQWk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhGQW036EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_99aoYAZ0EeOcdYCs3l6XnA/17" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQXE36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhGQX036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQXU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQX036EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhGQYE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQYU36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQY036EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhGQZk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQZE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQZk36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhGQZ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQaE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQak36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhGQa036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQbE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhGQak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQbU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQbk36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQcU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhGQak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQc036EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQdk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhGQd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQeE36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQek36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhGQdk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQfU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhGQdk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQgE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhGQdk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQgU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQg036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhGQhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQhU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQh036EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQiU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhGQg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQik36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQjE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhGQg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQjU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQj036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhGQg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQkE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQkk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhGQg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQk036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQlU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhGQg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQlk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQmE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhGQg036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQmU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQm036EeSS5u8wdxTIGg" name="StructuredComment">
          <eAnnotations xmi:id="_xhGQnE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQnU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGQn036EeSS5u8wdxTIGg" name="agent_type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGQoU36EeSS5u8wdxTIGg" name="question" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGQo036EeSS5u8wdxTIGg" name="source" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGQpU36EeSS5u8wdxTIGg" name="type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGQp036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQqk36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhGQX036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQq036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQrU36EeSS5u8wdxTIGg" name="Input_Context">
          <eAnnotations xmi:id="_xhGQrk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_xhGQr036EeSS5u8wdxTIGg" source="duplicates">
            <contents xmi:type="ecore:EReference" xmi:id="_xhGQsE36EeSS5u8wdxTIGg" name="activity" ordered="false" upperBound="-1">
              <eAnnotations xmi:id="_xhGQsU36EeSS5u8wdxTIGg" source="redefines">
                <references xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityNode/activity"/>
              </eAnnotations>
              <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
            </contents>
          </eAnnotations>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGQs036EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQtU36EeSS5u8wdxTIGg" name="context" ordered="false" lowerBound="1" eType="_xhGQuE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQuE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhGQuU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhGQuk36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_ez6ZwAZ0EeOcdYCs3l6XnA/16" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQu036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhGQvk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQvE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQvk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhGQv036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQwE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQwk36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhGQxU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQw036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQxU36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhGQxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQx036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQyU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhGQyk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQy036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhGQyU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQzU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQ0E36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhGQyU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQ0U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQ0k36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQ1U36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhGQ1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQ1036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQ2U36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhGQ1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQ2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQ3E36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhGQ1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQ3U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQ3036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhGQ1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQ4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQ4k36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhGQ4036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQ5E36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQ5k36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQ6E36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhGQ4k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQ6U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQ6036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhGQ4k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQ7E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQ7k36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhGQ4k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQ7036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQ8U36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhGQ4k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQ8k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQ9E36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhGQ4k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQ9U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQ9036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhGQ4k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGQ-E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGQ-k36EeSS5u8wdxTIGg" name="StructuredComment">
          <eAnnotations xmi:id="_xhGQ-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGQ_E36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGQ_k36EeSS5u8wdxTIGg" name="agent_type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGRAE36EeSS5u8wdxTIGg" name="question" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGRAk36EeSS5u8wdxTIGg" name="source" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGRBE36EeSS5u8wdxTIGg" name="type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGRBk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRCU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhGQvk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRCk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRDE36EeSS5u8wdxTIGg" name="OCL_Context">
          <eAnnotations xmi:id="_xhGRDU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGRDk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGREE36EeSS5u8wdxTIGg" name="activity" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGREk36EeSS5u8wdxTIGg" name="context" ordered="false" lowerBound="1" eType="_xhGRFE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRFE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhGRFU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhGRFk36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_WMClAAZ0EeOcdYCs3l6XnA/15" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRF036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhGRGk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRGk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhGRG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGRHE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRHk36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhGRIU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRIU36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhGRIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGRI036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRJU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhGRJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRJ036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhGRJU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGRKU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRLE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhGRJU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGRLk36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRMU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhGRMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGRM036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRNU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhGRMU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRNk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGROE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhGRMU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGROU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRO036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhGRMU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRPk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhGRP036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGRQE36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGRQk36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRRE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhGRPk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRRU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRR036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhGRPk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRSE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRSk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhGRPk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRS036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRTU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhGRPk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRTk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRUE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhGRPk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRUU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRU036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhGRPk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRVE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRVk36EeSS5u8wdxTIGg" name="StructuredComment">
          <eAnnotations xmi:id="_xhGRV036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGRWE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGRWk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGRXE36EeSS5u8wdxTIGg" name="question" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGRXk36EeSS5u8wdxTIGg" name="source" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGRYE36EeSS5u8wdxTIGg" name="type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGRYk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRZU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhGRGk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRZk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRaE36EeSS5u8wdxTIGg" name="OCL_Context">
          <eAnnotations xmi:id="_xhGRaU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGRak36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGRbE36EeSS5u8wdxTIGg" name="activity" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGRbk36EeSS5u8wdxTIGg" name="context" ordered="false" lowerBound="1" eType="_xhGRcE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRcE36EeSS5u8wdxTIGg" name="context">
          <eAnnotations xmi:id="_xhGRcU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG54E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhGRck36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/__16QgAZzEeOcdYCs3l6XnA/14" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRc036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhGRdk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRdk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhGRd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGReE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRek36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhGRfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRfU36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhGRfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGRf036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRgU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhGRgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRg036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhGRgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRhE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGRhU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRiE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhGRgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGRik36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRjU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhGRjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGRj036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRkU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhGRjU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRlE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhGRjU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRlU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRl036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhGRjU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRmk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhGRm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGRnE36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGRnk36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRoE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhGRmk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRo036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhGRmk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRpk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhGRmk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRqU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhGRmk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRrE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhGRmk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRr036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhGRmk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRsk36EeSS5u8wdxTIGg" name="StructuredComment">
          <eAnnotations xmi:id="_xhGRs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGRtE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGRtk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGRuE36EeSS5u8wdxTIGg" name="question" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGRuk36EeSS5u8wdxTIGg" name="source" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGRvE36EeSS5u8wdxTIGg" name="type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGRvk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRwU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhGRdk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRxE36EeSS5u8wdxTIGg" name="OCL_Context">
          <eAnnotations xmi:id="_xhGRxU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGRxk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGRyE36EeSS5u8wdxTIGg" name="activity" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Activity"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhGRyk36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_ElLRcAZzEeOOR4hKc-k7wg/13" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRy036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhGRzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGRzE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGRzk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhGRz036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGR0E36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGR0k36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhGR1U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGR0036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGR1U36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhGR1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGR1036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGR2U36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhGR2k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGR2036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhGR2U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGR3E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGR3U36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGR4E36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhGR2U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGR4U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGR4k36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGR5U36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhGR5k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGR5036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGR6U36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhGR5U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGR6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGR7E36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhGR5U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGR7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGR7036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhGR5U36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGR8E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGR8k36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhGR8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGR9E36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGR9k36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGR-E36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhGR8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGR-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGR-036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhGR8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGR_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGR_k36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhGR8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGR_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSAU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhGR8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSBE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhGR8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSB036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhGR8k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSCE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSCk36EeSS5u8wdxTIGg" name="StructuredComment">
          <eAnnotations xmi:id="_xhGSC036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGSDE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGSDk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGSEE36EeSS5u8wdxTIGg" name="question" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGSEk36EeSS5u8wdxTIGg" name="source" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGSFE36EeSS5u8wdxTIGg" name="type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGSFk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSGU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhGRzk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSGk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSHE36EeSS5u8wdxTIGg" name="OCL_Context">
          <eAnnotations xmi:id="_xhGSHU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGSHk36EeSS5u8wdxTIGg" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhGSIE36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_qT2SsAZyEeOOR4hKc-k7wg/12" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSIU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhGSJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSJE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhGSJU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGSJk36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSKE36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhGSK036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSKU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSK036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhGSLE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGSLU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSL036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhGSME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSMU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhGSL036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSMk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGSM036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSNk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhGSL036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSN036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGSOE36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSO036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhGSPE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGSPU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSP036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhGSO036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSQE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSQk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhGSO036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSQ036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSRU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhGSO036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSRk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSSE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhGSSU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGSSk36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGSTE36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSTk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhGSSE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGST036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSUU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhGSSE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSUk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSVE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhGSSE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSVU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSV036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhGSSE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSWE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSWk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhGSSE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSW036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSXU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhGSSE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSYE36EeSS5u8wdxTIGg" name="StructuredComment">
          <eAnnotations xmi:id="_xhGSYU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGSYk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGSZE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGSZk36EeSS5u8wdxTIGg" name="question" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGSaE36EeSS5u8wdxTIGg" name="source" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGSak36EeSS5u8wdxTIGg" name="type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGSbE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSb036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhGSJE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGScE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhGSck36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_6qcYkAZwEeOOR4hKc-k7wg/11" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSc036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhGSdk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSdE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSdk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhGSd036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGSeE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSek36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhGSfU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSe036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSfU36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhGSfk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGSf036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSgU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhGSgk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSg036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhGSgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGShE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGShU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSiE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhGSgU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSiU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGSik36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSjU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhGSjk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGSj036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSkU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhGSjU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSkk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSlE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhGSjU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSlU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSl036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhGSjU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSmE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSmk36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhGSm036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGSnE36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGSnk36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSoE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhGSmk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSoU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSo036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhGSmk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSpE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSpk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhGSmk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSp036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSqU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhGSmk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSqk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSrE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhGSmk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSrU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSr036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhGSmk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSsE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSsk36EeSS5u8wdxTIGg" name="StructuredComment">
          <eAnnotations xmi:id="_xhGSs036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGStE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGStk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGSuE36EeSS5u8wdxTIGg" name="question" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGSuk36EeSS5u8wdxTIGg" name="source" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGSvE36EeSS5u8wdxTIGg" name="type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGSvk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSwU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhGSdk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSwk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhGSxE36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_34DwgAZwEeOOR4hKc-k7wg/10" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSxU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhGSyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSxk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSyE36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhGSyU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGSyk36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSzE36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhGSz036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGSzU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGSz036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhGS0E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGS0U36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGS0036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhGS1E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGS1U36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhGS0036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGS1k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGS1036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGS2k36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhGS0036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGS2036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGS3E36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGS3036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhGS4E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGS4U36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGS4036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhGS3036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGS5E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGS5k36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhGS3036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGS5036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGS6U36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhGS3036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGS6k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGS7E36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhGS7U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGS7k36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGS8E36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGS8k36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhGS7E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGS8036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGS9U36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhGS7E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGS9k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGS-E36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhGS7E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGS-U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGS-036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhGS7E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGS_E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGS_k36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhGS7E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGS_036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGTAU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhGS7E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGTAk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGTBE36EeSS5u8wdxTIGg" name="StructuredComment">
          <eAnnotations xmi:id="_xhGTBU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGTBk36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGTCE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGTCk36EeSS5u8wdxTIGg" name="question" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGTDE36EeSS5u8wdxTIGg" name="source" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGTDk36EeSS5u8wdxTIGg" name="type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhGTEE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGTE036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhGSyE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGTFE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhGTFk36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_nDfnIAZwEeOOR4hKc-k7wg/9" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGTF036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhGTGk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGTGE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGTGk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhGTG036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGTHE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGTHk36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhGTIU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGTH036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGTIU36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhGTIk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGTI036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGTJU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhGTJk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGTJ036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhGTJU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGTKE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhGTKU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhGTLE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhGTJU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhGTLU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3EE36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3E036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhG3FE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3FU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3F036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhG3E036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3GE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3Gk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhG3E036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3G036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3HU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhG3E036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3Hk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3IE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhG3IU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3Ik36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3JE36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3Jk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhG3IE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3J036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3KU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhG3IE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3Kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3LE36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhG3IE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3LU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3L036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhG3IE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3ME36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3Mk36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhG3IE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3M036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3NU36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhG3IE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3Nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3OE36EeSS5u8wdxTIGg" name="StructuredComment">
          <eAnnotations xmi:id="_xhG3OU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3Ok36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG3PE36EeSS5u8wdxTIGg" name="agent_type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG3Pk36EeSS5u8wdxTIGg" name="question" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG3QE36EeSS5u8wdxTIGg" name="source" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG3Qk36EeSS5u8wdxTIGg" name="type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG3RE36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3R036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhGTGk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3SE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhG3Sk36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_lHvFEAZwEeOOR4hKc-k7wg/8" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3S036EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhG3Tk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3TE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3Tk36EeSS5u8wdxTIGg" name="activity" abstract="true">
          <eAnnotations xmi:id="_xhG3T036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3UE36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3Uk36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhG3VU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3U036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3VU36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhG3Vk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3V036EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3WU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhG3Wk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3W036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhG3WU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3XE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3XU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3YE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhG3WU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3YU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3Yk36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3ZU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhG3Zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3Z036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3aU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhG3ZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3ak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3bE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhG3ZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3bU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3b036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhG3ZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3cE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3ck36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhG3c036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3dE36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3dk36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3eE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhG3ck36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3eU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3e036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhG3ck36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3fE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3fk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhG3ck36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3f036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3gU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhG3ck36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3gk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3hE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhG3ck36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3hU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3h036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhG3ck36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3iE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3ik36EeSS5u8wdxTIGg" name="StructuredComment">
          <eAnnotations xmi:id="_xhG3i036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3jE36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG3jk36EeSS5u8wdxTIGg" name="agent_type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG3kE36EeSS5u8wdxTIGg" name="question" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG3kk36EeSS5u8wdxTIGg" name="source" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG3lE36EeSS5u8wdxTIGg" name="type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG3lk36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3mU36EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhG3Tk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3mk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhG3nE36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_1-omMAZvEeOOR4hKc-k7wg/7" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3nU36EeSS5u8wdxTIGg" name="calculate" eSuperTypes="_xhG3oE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3nk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3oE36EeSS5u8wdxTIGg" name="activity">
          <eAnnotations xmi:id="_xhG3oU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5yE36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3ok36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3pE36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhG3p036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3pU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3p036EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhG3qE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3qU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3q036EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhG3rE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3rU36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhG3q036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3r036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3sk36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhG3q036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3s036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3tE36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3t036EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhG3uE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3uU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3u036EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhG3t036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3vE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3vk36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhG3t036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3v036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3wU36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhG3t036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3wk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3xE36EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhG3xU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3xk36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3yE36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3yk36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhG3xE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3y036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3zU36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhG3xE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG30E36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhG3xE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG30U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG30036EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhG3xE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG31E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG31k36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhG3xE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG31036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG32U36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhG3xE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG32k36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG33E36EeSS5u8wdxTIGg" name="StructuredComment">
          <eAnnotations xmi:id="_xhG33U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG33k36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG34E36EeSS5u8wdxTIGg" name="agent_type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG34k36EeSS5u8wdxTIGg" name="question" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG35E36EeSS5u8wdxTIGg" name="source" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG35k36EeSS5u8wdxTIGg" name="type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG36E36EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG36036EeSS5u8wdxTIGg" name="assert" eSuperTypes="_xhG3oE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG37E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG51E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhG37k36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_LiGkIAZvEeOOR4hKc-k7wg/6" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG37036EeSS5u8wdxTIGg" name="calculate">
          <eAnnotations xmi:id="_xhG38E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG38U36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG38036EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhG39k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG39E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG39k36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhG39036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3-E36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3-k36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhG3-036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG3_E36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhG3-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG3_U36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG3_k36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4AU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhG3-k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4Ak36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4A036EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4Bk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhG4B036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4CE36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4Ck36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhG4Bk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4C036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4DU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhG4Bk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4Dk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4EE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhG4Bk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4EU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4E036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhG4FE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4FU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4F036EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4GU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhG4E036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4Gk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4HE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhG4E036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4HU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4H036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhG4E036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4IE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4Ik36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhG4E036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4I036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4JU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhG4E036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4Jk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4KE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhG4E036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4KU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4K036EeSS5u8wdxTIGg" name="StructuredComment">
          <eAnnotations xmi:id="_xhG4LE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eSuperTypes href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4LU36EeSS5u8wdxTIGg" name="constraint" ordered="false">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG4L036EeSS5u8wdxTIGg" name="agent_type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG4MU36EeSS5u8wdxTIGg" name="question" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG4M036EeSS5u8wdxTIGg" name="source" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG4NU36EeSS5u8wdxTIGg" name="type" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xhG4N036EeSS5u8wdxTIGg" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhG4Ok36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_lh2VkAZtEeOOR4hKc-k7wg/5" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4O036EeSS5u8wdxTIGg" name="calculate">
          <eAnnotations xmi:id="_xhG4PE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4PU36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4P036EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhG4Qk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4QE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4Qk36EeSS5u8wdxTIGg" name="question" abstract="true">
          <eAnnotations xmi:id="_xhG4Q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4RE36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4Rk36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhG4R036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4SE36EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhG4Rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4SU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4Sk36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4TU36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhG4Rk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4Tk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4T036EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4Uk36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhG4U036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4VE36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4Vk36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhG4Uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4V036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4WU36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhG4Uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4Wk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4XE36EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhG4Uk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4XU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4X036EeSS5u8wdxTIGg" name="type" abstract="true">
          <eAnnotations xmi:id="_xhG4YE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4YU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4Y036EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4ZU36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhG4X036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4Zk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4aE36EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhG4X036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4aU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4a036EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhG4X036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4bE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4bk36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhG4X036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4b036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4cU36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhG4X036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4ck36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4dE36EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhG4X036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4dU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhG4d036EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_bOeBQAZtEeOOR4hKc-k7wg/4" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4eE36EeSS5u8wdxTIGg" name="calculate">
          <eAnnotations xmi:id="_xhG4eU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4ek36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4fE36EeSS5u8wdxTIGg" name="query" eSuperTypes="_xhG4g036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4fU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4fk36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4gE36EeSS5u8wdxTIGg" name="base_Constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4g036EeSS5u8wdxTIGg" name="question">
          <eAnnotations xmi:id="_xhG4hE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4hU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhG4hk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4h036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhG4hU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4iE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4iU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4jE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhG4hU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4jU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4jk36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4kU36EeSS5u8wdxTIGg" name="source" abstract="true">
          <eAnnotations xmi:id="_xhG4kk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5g036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4k036EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4lU36EeSS5u8wdxTIGg" name="fromagent" eSuperTypes="_xhG4kU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4lk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5pE36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4mE36EeSS5u8wdxTIGg" name="fromlaw" eSuperTypes="_xhG4kU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4mU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5qk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4m036EeSS5u8wdxTIGg" name="fromrecord" eSuperTypes="_xhG4kU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4nE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5tk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4nk36EeSS5u8wdxTIGg" name="type">
          <eAnnotations xmi:id="_xhG4n036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4oE36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4ok36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4pE36EeSS5u8wdxTIGg" name="number" eSuperTypes="_xhG4nk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4pU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4p036EeSS5u8wdxTIGg" name="string" eSuperTypes="_xhG4nk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4qE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4qk36EeSS5u8wdxTIGg" name="boolean" eSuperTypes="_xhG4nk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4q036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4rU36EeSS5u8wdxTIGg" name="money" eSuperTypes="_xhG4nk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4rk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4sE36EeSS5u8wdxTIGg" name="object" eSuperTypes="_xhG4nk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4sU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4s036EeSS5u8wdxTIGg" name="objectset" eSuperTypes="_xhG4nk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4tE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhG4tk36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_mrLxoAZsEeOOR4hKc-k7wg/3" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4t036EeSS5u8wdxTIGg" name="calculate">
          <eAnnotations xmi:id="_xhG4uE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4uU36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4u036EeSS5u8wdxTIGg" name="query">
          <eAnnotations xmi:id="_xhG4vE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG48E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4vU36EeSS5u8wdxTIGg" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4v036EeSS5u8wdxTIGg" name="base_Constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4wU36EeSS5u8wdxTIGg" name="direction" abstract="true">
          <eAnnotations xmi:id="_xhG4wk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5Sk36EeSS5u8wdxTIGg"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4w036EeSS5u8wdxTIGg" name="in" eSuperTypes="_xhG4wU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4xE36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5X036EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4xU36EeSS5u8wdxTIGg" name="base_InputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//InputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4yE36EeSS5u8wdxTIGg" name="out" eSuperTypes="_xhG4wU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4yU36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG5cU36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG4yk36EeSS5u8wdxTIGg" name="base_OutputPin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//OutputPin"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhG4zU36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_iTNooAZoEeOOR4hKc-k7wg/2" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG4zk36EeSS5u8wdxTIGg" name="calculate">
          <eAnnotations xmi:id="_xhG4z036EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG40E36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhG40k36EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_9a5C4ATvEeO0DqTEpdZ6ag/1" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xhG40036EeSS5u8wdxTIGg" name="calculate">
          <eAnnotations xmi:id="_xhG41E36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xhG45E36EeSS5u8wdxTIGg"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xhG41U36EeSS5u8wdxTIGg" name="base_Action" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Action"/>
          </eStructuralFeatures>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_xhG41036EeSS5u8wdxTIGg" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_yC-IYATvEeO0DqTEpdZ6ag/0" nsPrefix="ActicityDiagramProfile"/>
    </eAnnotations>
    <packageImport xmi:id="_xhG42E36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhG42U36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhG42k36EeSS5u8wdxTIGg" key="addedInVersion" value="1"/>
      </eAnnotations>
      <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
    </packageImport>
    <packageImport xmi:id="_xhG42036EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhG43E36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhG43U36EeSS5u8wdxTIGg" key="addedInVersion" value="1"/>
      </eAnnotations>
      <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#_0"/>
    </packageImport>
    <packageImport xmi:id="_xhG43k36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhG43036EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhG44E36EeSS5u8wdxTIGg" key="addedInVersion" value="1"/>
      </eAnnotations>
      <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#_0"/>
    </packageImport>
    <packageImport xmi:id="_xhG44U36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhG44k36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhG44036EeSS5u8wdxTIGg" key="addedInVersion" value="1"/>
      </eAnnotations>
      <importedPackage xmi:type="uml:Model" href="pathmap://UML_METAMODELS/UML.metamodel.uml#_0"/>
    </packageImport>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhG45E36EeSS5u8wdxTIGg" name="calculate">
      <eAnnotations xmi:id="_xhG45U36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhG45k36EeSS5u8wdxTIGg" key="addedInVersion" value="1"/>
      </eAnnotations>
      <ownedRule xmi:id="_xhG45036EeSS5u8wdxTIGg" name="for_each_calculation_the_formula_stereotype_should_be_applied_on_associated_comment" constrainedElement="_xhG45E36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG46E36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG46U36EeSS5u8wdxTIGg" key="addedInVersion" value="98"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhG46k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG46036EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG47E36EeSS5u8wdxTIGg" key="addedInVersion" value="98"/>
          </eAnnotations>
          <language>OCL</language>
          <body>uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::formula').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_xhG47U36EeSS5u8wdxTIGg" general="_xhG5yE36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG47k36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG47036EeSS5u8wdxTIGg" key="addedInVersion" value="7"/>
        </eAnnotations>
      </generalization>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhG48E36EeSS5u8wdxTIGg" name="query">
      <eAnnotations xmi:id="_xhG48U36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhG48k36EeSS5u8wdxTIGg" key="addedInVersion" value="3"/>
      </eAnnotations>
      <ownedRule xmi:id="_xhG48036EeSS5u8wdxTIGg" name="query_fromlaw" constrainedElement="_xhG48E36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG49E36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG49U36EeSS5u8wdxTIGg" key="addedInVersion" value="84"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhG49k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG49036EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG4-E36EeSS5u8wdxTIGg" key="addedInVersion" value="84"/>
          </eAnnotations>
          <language>OCL</language>
          <body> self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1&#xA;&#xA;implies&#xA;&#xA;self.source.size() > 1 and&#xA;self.value_type &lt;>Value_Type::NONE  and&#xA;self.question.size() > 1 and&#xA;self.constraint->size()=0&#xA;and&#xA;self.agent_role=Agent_Role::NONE&#xA; &#xA;and&#xA;if self.value_type = Value_Type::LOOKUP_TABLE then&#xA;&#x9;&#x9;self.parameters->size() > 0&#xA;else&#xA;&#x9;  self.parameters->size()=0&#xA;endif &#xA;</body>
        </specification>
      </ownedRule>
      <ownedRule xmi:id="_xhG4-U36EeSS5u8wdxTIGg" name="query_fromagent" constrainedElement="_xhG48E36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG4-k36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG4-036EeSS5u8wdxTIGg" key="addedInVersion" value="85"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhG4_E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG4_U36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG4_k36EeSS5u8wdxTIGg" key="addedInVersion" value="85"/>
          </eAnnotations>
          <language>OCL</language>
          <body>self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 &#xA;&#xA;implies&#xA;&#xA;self.source.size()=0  and&#xA;self.value_type = Value_Type::NONE and&#xA;self.parameters->size()=0 and&#xA;self.constraint->size()=0 and&#xA;&#xA;self.agent_role &lt;> Agent_Role::NONE and&#xA;self.question.size()>1&#xA;&#xA;</body>
        </specification>
      </ownedRule>
      <ownedRule xmi:id="_xhG4_036EeSS5u8wdxTIGg" name="query_fromrecord" constrainedElement="_xhG48E36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5AE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5AU36EeSS5u8wdxTIGg" key="addedInVersion" value="87"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhG5Ak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5A036EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5BE36EeSS5u8wdxTIGg" key="addedInVersion" value="87"/>
          </eAnnotations>
          <language>OCL</language>
          <body>self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1&#xA;implies&#xA;&#xA;self.constraint->size() =1 and&#xA;self.value_type = Value_Type::NONE and&#xA;self.agent_role = Agent_Role::NONE and&#xA;self.parameters->size() = 0 and&#xA;self.question.size() = 0  and&#xA;self.source.size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;</body>
        </specification>
      </ownedRule>
      <ownedRule xmi:id="_xhG5BU36EeSS5u8wdxTIGg" name="unique_query_per_comment" constrainedElement="_xhG48E36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5Bk36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5B036EeSS5u8wdxTIGg" key="addedInVersion" value="88"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhG5CE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5CU36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5Ck36EeSS5u8wdxTIGg" key="addedInVersion" value="88"/>
          </eAnnotations>
          <language>OCL</language>
          <body>self.base_Comment.annotatedElement->size() = 1 and&#xA;(&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined())->size()=1 or &#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined())->size()=1  or&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#xA;self.base_Comment.annotatedElement->select(el | not el.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined())->size()=1 )&#xA;&#xA;implies&#xA;&#xA;&#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::query')->size() = 1 </body>
        </specification>
      </ownedRule>
      <ownedAttribute xmi:id="_xhG5C036EeSS5u8wdxTIGg" name="agent_role" visibility="public" type="_xhHeJU36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5DE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5DU36EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
        </eAnnotations>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_xhG5Dk36EeSS5u8wdxTIGg" value="1">
          <eAnnotations xmi:id="_xhG5D036EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5EE36EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
          </eAnnotations>
        </upperValue>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_xhG5EU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5Ek36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5E036EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
          </eAnnotations>
        </lowerValue>
        <defaultValue xmi:type="uml:InstanceValue" xmi:id="_xhG5FE36EeSS5u8wdxTIGg" name="NONE" type="_xhHeJU36EeSS5u8wdxTIGg" instance="_xhHeKE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5FU36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5Fk36EeSS5u8wdxTIGg" key="addedInVersion" value="132"/>
          </eAnnotations>
        </defaultValue>
      </ownedAttribute>
      <ownedAttribute xmi:id="_xhG5F036EeSS5u8wdxTIGg" name="question" visibility="public">
        <eAnnotations xmi:id="_xhG5GE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5GU36EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
        </eAnnotations>
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_xhG5Gk36EeSS5u8wdxTIGg" value="1">
          <eAnnotations xmi:id="_xhG5G036EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5HE36EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
          </eAnnotations>
        </upperValue>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_xhG5HU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5Hk36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5H036EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
          </eAnnotations>
        </lowerValue>
      </ownedAttribute>
      <ownedAttribute xmi:id="_xhG5IE36EeSS5u8wdxTIGg" name="source" visibility="public">
        <eAnnotations xmi:id="_xhG5IU36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5Ik36EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
        </eAnnotations>
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_xhG5I036EeSS5u8wdxTIGg" value="1">
          <eAnnotations xmi:id="_xhG5JE36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5JU36EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
          </eAnnotations>
        </upperValue>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_xhG5Jk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5J036EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5KE36EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
          </eAnnotations>
        </lowerValue>
      </ownedAttribute>
      <ownedAttribute xmi:id="_xhG5KU36EeSS5u8wdxTIGg" name="value_type" visibility="public" type="_xhHeMU36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5Kk36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5K036EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
        </eAnnotations>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_xhG5LE36EeSS5u8wdxTIGg" value="1">
          <eAnnotations xmi:id="_xhG5LU36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5Lk36EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
          </eAnnotations>
        </upperValue>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_xhG5L036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5ME36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5MU36EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
          </eAnnotations>
        </lowerValue>
        <defaultValue xmi:type="uml:InstanceValue" xmi:id="_xhG5Mk36EeSS5u8wdxTIGg" name="NONE" type="_xhHeMU36EeSS5u8wdxTIGg" instance="_xhHeNE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5M036EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5NE36EeSS5u8wdxTIGg" key="addedInVersion" value="133"/>
          </eAnnotations>
        </defaultValue>
      </ownedAttribute>
      <ownedAttribute xmi:id="_xhG5NU36EeSS5u8wdxTIGg" name="parameters" visibility="public">
        <eAnnotations xmi:id="_xhG5Nk36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5N036EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
        </eAnnotations>
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_xhG5OE36EeSS5u8wdxTIGg" value="*">
          <eAnnotations xmi:id="_xhG5OU36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5Ok36EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
          </eAnnotations>
        </upperValue>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_xhG5O036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5PE36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5PU36EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
          </eAnnotations>
        </lowerValue>
      </ownedAttribute>
      <ownedAttribute xmi:id="_xhG5Pk36EeSS5u8wdxTIGg" name="constraint" visibility="private" aggregation="shared" association="_xhG5vE36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5P036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5QE36EeSS5u8wdxTIGg" key="addedInVersion" value="6"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Constraint"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_xhG5QU36EeSS5u8wdxTIGg" value="*">
          <eAnnotations xmi:id="_xhG5Qk36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5Q036EeSS5u8wdxTIGg" key="addedInVersion" value="6"/>
          </eAnnotations>
        </upperValue>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_xhG5RE36EeSS5u8wdxTIGg" value="1">
          <eAnnotations xmi:id="_xhG5RU36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5Rk36EeSS5u8wdxTIGg" key="addedInVersion" value="6"/>
          </eAnnotations>
        </lowerValue>
      </ownedAttribute>
      <ownedAttribute xmi:id="_xhG5R036EeSS5u8wdxTIGg" name="base_Comment" association="_xhHeiE36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5SE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5SU36EeSS5u8wdxTIGg" key="addedInVersion" value="67"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Comment"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhG5Sk36EeSS5u8wdxTIGg" name="direction" isAbstract="true">
      <eAnnotations xmi:id="_xhG5S036EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhG5TE36EeSS5u8wdxTIGg" key="addedInVersion" value="3"/>
      </eAnnotations>
      <ownedRule xmi:id="_xhG5TU36EeSS5u8wdxTIGg" name="unque_in_out_per_pin_node" constrainedElement="_xhG5Sk36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5Tk36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5T036EeSS5u8wdxTIGg" key="addedInVersion" value="177"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhG5UE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5UU36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5Uk36EeSS5u8wdxTIGg" key="addedInVersion" value="177"/>
          </eAnnotations>
          <language>OCL</language>
          <body>self.base_Pin.oclIsTypeOf(uml::Pin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::Pin = self.base_Pin in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() </body>
        </specification>
      </ownedRule>
      <ownedRule xmi:id="_xhG5U036EeSS5u8wdxTIGg" name="unque_in_out_per_parameter_node" constrainedElement="_xhG5Sk36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5VE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5VU36EeSS5u8wdxTIGg" key="addedInVersion" value="296"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhG5Vk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5V036EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5WE36EeSS5u8wdxTIGg" key="addedInVersion" value="296"/>
          </eAnnotations>
          <language>OCL</language>
          <body>self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::in')->notEmpty() xor&#xA;object_node.getAppliedStereotype('CTIE_Profile_Final::out')->notEmpty() </body>
        </specification>
      </ownedRule>
      <ownedAttribute xmi:id="_xhG5WU36EeSS5u8wdxTIGg" name="base_Pin" association="_xhHewU36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5Wk36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5W036EeSS5u8wdxTIGg" key="addedInVersion" value="201"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Pin"/>
      </ownedAttribute>
      <ownedAttribute xmi:id="_xhG5XE36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" association="_xhHezU36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5XU36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5Xk36EeSS5u8wdxTIGg" key="addedInVersion" value="201"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#ActivityParameterNode"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhG5X036EeSS5u8wdxTIGg" name="in">
      <eAnnotations xmi:id="_xhG5YE36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhG5YU36EeSS5u8wdxTIGg" key="addedInVersion" value="3"/>
      </eAnnotations>
      <ownedRule xmi:id="_xhG5Yk36EeSS5u8wdxTIGg" name="macthes_parameter_direction_in" constrainedElement="_xhG5X036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5Y036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5ZE36EeSS5u8wdxTIGg" key="addedInVersion" value="192"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhG5ZU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5Zk36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5Z036EeSS5u8wdxTIGg" key="addedInVersion" value="192"/>
          </eAnnotations>
          <language>OCL</language>
          <body>self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::inout and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::out and&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction &lt;> uml::ParameterDirectionKind::return&#xA;&#xA;&#xA;&#x9;</body>
        </specification>
      </ownedRule>
      <ownedRule xmi:id="_xhG5aE36EeSS5u8wdxTIGg" name="matches_input_pin" constrainedElement="_xhG5X036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5aU36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5ak36EeSS5u8wdxTIGg" key="addedInVersion" value="194"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhG5a036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5bE36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5bU36EeSS5u8wdxTIGg" key="addedInVersion" value="194"/>
          </eAnnotations>
          <language>OCL</language>
          <body>if self.base_Pin.oclIsTypeOf(uml::Pin) and&#xA;&#x9;self.base_Pin.getApplicableStereotype('CTIE_Profile_Final::in')->notEmpty()&#xA;then&#xA;&#x9;self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;else&#xA;&#x9;true&#xA;endif&#xA;&#xA;&#xA;</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_xhG5bk36EeSS5u8wdxTIGg" general="_xhG5Sk36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5b036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5cE36EeSS5u8wdxTIGg" key="addedInVersion" value="3"/>
        </eAnnotations>
      </generalization>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhG5cU36EeSS5u8wdxTIGg" name="out">
      <eAnnotations xmi:id="_xhG5ck36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhG5c036EeSS5u8wdxTIGg" key="addedInVersion" value="3"/>
      </eAnnotations>
      <ownedRule xmi:id="_xhG5dE36EeSS5u8wdxTIGg" name="matches_parameter_direction_out" constrainedElement="_xhG5cU36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5dU36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5dk36EeSS5u8wdxTIGg" key="addedInVersion" value="195"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhG5d036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5eE36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5eU36EeSS5u8wdxTIGg" key="addedInVersion" value="195"/>
          </eAnnotations>
          <language>OCL</language>
          <body>self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#x9;implies&#xA;self.base_ActivityParameterNode.oclAsType(uml::ActivityParameterNode).parameter.direction = uml::ParameterDirectionKind::out&#x9;&#xA;</body>
        </specification>
      </ownedRule>
      <ownedRule xmi:id="_xhG5ek36EeSS5u8wdxTIGg" name="matches_output_pin" constrainedElement="_xhG5cU36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5e036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5fE36EeSS5u8wdxTIGg" key="addedInVersion" value="195"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhG5fU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5fk36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5f036EeSS5u8wdxTIGg" key="addedInVersion" value="195"/>
          </eAnnotations>
          <language>OCL</language>
          <body>self.base_Pin.oclIsKindOf(uml::Pin)&#xA;implies&#xA;self.base_Pin.oclIsTypeOf(uml::OutputPin)&#xA;&#xA;</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_xhG5gE36EeSS5u8wdxTIGg" general="_xhG5Sk36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5gU36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5gk36EeSS5u8wdxTIGg" key="addedInVersion" value="3"/>
        </eAnnotations>
      </generalization>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhG5g036EeSS5u8wdxTIGg" name="source" isAbstract="true">
      <eAnnotations xmi:id="_xhG5hE36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhG5hU36EeSS5u8wdxTIGg" key="addedInVersion" value="4"/>
      </eAnnotations>
      <ownedRule xmi:id="_xhG5hk36EeSS5u8wdxTIGg" name="unique_source_for_parameter_nodes" constrainedElement="_xhG5g036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5h036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5iE36EeSS5u8wdxTIGg" key="addedInVersion" value="79"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhG5iU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5ik36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5i036EeSS5u8wdxTIGg" key="addedInVersion" value="79"/>
          </eAnnotations>
          <language>OCL</language>
          <body>self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif&#xA;</body>
        </specification>
      </ownedRule>
      <ownedRule xmi:id="_xhG5jE36EeSS5u8wdxTIGg" name="for_each_source_for_parameter_nodes_the_query_must_be_given" constrainedElement="_xhG5g036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5jU36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5jk36EeSS5u8wdxTIGg" key="addedInVersion" value="121"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhG5j036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5kE36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5kU36EeSS5u8wdxTIGg" key="addedInVersion" value="121"/>
          </eAnnotations>
          <language>OCL</language>
          <body>self.base_ActivityParameterNode.oclIsTypeOf(uml::ActivityParameterNode) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::ActivityParameterNode = self.base_ActivityParameterNode in&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::ActivityParameterNode) and el.oclAsType(uml::ActivityParameterNode).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;</body>
        </specification>
      </ownedRule>
      <ownedRule xmi:id="_xhG5kk36EeSS5u8wdxTIGg" name="unique_source_for_inputpin_nodes" constrainedElement="_xhG5g036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5k036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5lE36EeSS5u8wdxTIGg" key="addedInVersion" value="285"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhG5lU36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5lk36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5l036EeSS5u8wdxTIGg" key="addedInVersion" value="285"/>
          </eAnnotations>
          <language>OCL</language>
          <body>self.base_Pin.oclIsTypeOf(uml::InputPin)&#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin) in&#xA;&#xA;if (not  object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined() ) then&#xA;&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined()&#x9;and&#xA; &#x9;  object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA; else&#xA; &#x9;&#x9;if (not object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord').oclIsUndefined() ) then&#xA; &#x9;&#x9;&#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent').oclIsUndefined()&#x9;and&#xA;&#x9;&#x9; &#x9; object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; else&#xA; &#x9;&#x9;&#x9;not object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw').oclIsUndefined()&#xA;&#x9; endif&#xA; endif</body>
        </specification>
      </ownedRule>
      <ownedRule xmi:id="_xhG5mE36EeSS5u8wdxTIGg" name="for_each_source_for_inputpin_nodes_the_query_must_be_given" constrainedElement="_xhG5g036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5mU36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5mk36EeSS5u8wdxTIGg" key="addedInVersion" value="295"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhG5m036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5nE36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5nU36EeSS5u8wdxTIGg" key="addedInVersion" value="295"/>
          </eAnnotations>
          <language>OCL</language>
          <body>self.base_Pin.oclIsTypeOf(uml::InputPin) &#xA;&#xA;implies&#xA;&#xA;let object_node : uml::InputPin = self.base_Pin.oclAsType(uml::InputPin)  in&#xA;&#xA;if (object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromagent')) or &#xA;&#x9; object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromrecord'))  or&#xA;&#x9;object_node.isStereotypeApplied(object_node.getAppliedStereotype('CTIE_Profile_Final::fromlaw'))) then&#xA;&#x9;&#x9;&#xA;&#x9;uml::Comment.allInstances()->select(comm| comm.isStereotypeApplied(comm.getAppliedStereotype('CTIE_Profile_Final::query')) &#xA;&#x9;and comm.annotatedElement->exists( el |el.oclIsTypeOf(uml::InputPin) and el.oclAsType(uml::InputPin).qualifiedName = object_node.qualifiedName))->size() =1&#xA;&#x9;&#xA; else&#xA; &#x9;true&#xA;endif&#xA;</body>
        </specification>
      </ownedRule>
      <ownedAttribute xmi:id="_xhG5nk36EeSS5u8wdxTIGg" name="base_Pin" association="_xhHeu036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5n036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5oE36EeSS5u8wdxTIGg" key="addedInVersion" value="201"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Pin"/>
      </ownedAttribute>
      <ownedAttribute xmi:id="_xhG5oU36EeSS5u8wdxTIGg" name="base_ActivityParameterNode" association="_xhHex036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5ok36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5o036EeSS5u8wdxTIGg" key="addedInVersion" value="201"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#ActivityParameterNode"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhG5pE36EeSS5u8wdxTIGg" name="fromagent">
      <eAnnotations xmi:id="_xhG5pU36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhG5pk36EeSS5u8wdxTIGg" key="addedInVersion" value="4"/>
      </eAnnotations>
      <generalization xmi:id="_xhG5p036EeSS5u8wdxTIGg" general="_xhG5g036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5qE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5qU36EeSS5u8wdxTIGg" key="addedInVersion" value="4"/>
        </eAnnotations>
      </generalization>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhG5qk36EeSS5u8wdxTIGg" name="fromlaw">
      <eAnnotations xmi:id="_xhG5q036EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhG5rE36EeSS5u8wdxTIGg" key="addedInVersion" value="4"/>
      </eAnnotations>
      <generalization xmi:id="_xhG5rU36EeSS5u8wdxTIGg" general="_xhG5g036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5rk36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5r036EeSS5u8wdxTIGg" key="addedInVersion" value="4"/>
        </eAnnotations>
      </generalization>
      <ownedAttribute xmi:id="_xhG5sE36EeSS5u8wdxTIGg" name="base_Activity" association="_xhHfOU36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5sU36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5sk36EeSS5u8wdxTIGg" key="addedInVersion" value="317"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Activity"/>
      </ownedAttribute>
      <ownedAttribute xmi:id="_xhG5s036EeSS5u8wdxTIGg" name="value" visibility="public">
        <eAnnotations xmi:id="_xhG5tE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5tU36EeSS5u8wdxTIGg" key="addedInVersion" value="334"/>
        </eAnnotations>
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhG5tk36EeSS5u8wdxTIGg" name="fromrecord">
      <eAnnotations xmi:id="_xhG5t036EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhG5uE36EeSS5u8wdxTIGg" key="addedInVersion" value="4"/>
      </eAnnotations>
      <generalization xmi:id="_xhG5uU36EeSS5u8wdxTIGg" general="_xhG5g036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5uk36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5u036EeSS5u8wdxTIGg" key="addedInVersion" value="4"/>
        </eAnnotations>
      </generalization>
    </packagedElement>
    <packagedElement xmi:type="uml:Association" xmi:id="_xhG5vE36EeSS5u8wdxTIGg" memberEnd="_xhG5Pk36EeSS5u8wdxTIGg _xhG5v036EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhG5vU36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhG5vk36EeSS5u8wdxTIGg" key="addedInVersion" value="6"/>
      </eAnnotations>
      <ownedEnd xmi:id="_xhG5v036EeSS5u8wdxTIGg" name="structuredComment" visibility="private" type="_xhG48E36EeSS5u8wdxTIGg" association="_xhG5vE36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5wE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5wU36EeSS5u8wdxTIGg" key="addedInVersion" value="6"/>
        </eAnnotations>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_xhG5wk36EeSS5u8wdxTIGg" value="1">
          <eAnnotations xmi:id="_xhG5w036EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5xE36EeSS5u8wdxTIGg" key="addedInVersion" value="6"/>
          </eAnnotations>
        </upperValue>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_xhG5xU36EeSS5u8wdxTIGg" value="1">
          <eAnnotations xmi:id="_xhG5xk36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG5x036EeSS5u8wdxTIGg" key="addedInVersion" value="6"/>
          </eAnnotations>
        </lowerValue>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhG5yE36EeSS5u8wdxTIGg" name="operation" isAbstract="true">
      <eAnnotations xmi:id="_xhG5yU36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhG5yk36EeSS5u8wdxTIGg" key="addedInVersion" value="7"/>
      </eAnnotations>
      <ownedRule xmi:id="_xhG5y036EeSS5u8wdxTIGg" name="unique_activity" constrainedElement="_xhG5yE36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG5zE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG5zU36EeSS5u8wdxTIGg" key="addedInVersion" value="90"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhG5zk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG5z036EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG50E36EeSS5u8wdxTIGg" key="addedInVersion" value="90"/>
          </eAnnotations>
          <language>OCL</language>
          <body>self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty() xor self.base_OpaqueAction.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty()&#xA;&#xA;&#xA;&#xA;</body>
        </specification>
      </ownedRule>
      <ownedAttribute xmi:id="_xhG50U36EeSS5u8wdxTIGg" name="base_OpaqueAction" association="_xhHejk36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG50k36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG50036EeSS5u8wdxTIGg" key="addedInVersion" value="90"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#OpaqueAction"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhG51E36EeSS5u8wdxTIGg" name="assert">
      <eAnnotations xmi:id="_xhG51U36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhG51k36EeSS5u8wdxTIGg" key="addedInVersion" value="7"/>
      </eAnnotations>
      <ownedRule xmi:id="_xhG51036EeSS5u8wdxTIGg" name="for_each_assertion_the_constraint_stereotype_should_be_applied_on_associated_comment" constrainedElement="_xhG51E36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG52E36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG52U36EeSS5u8wdxTIGg" key="addedInVersion" value="97"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhG52k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG52036EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG53E36EeSS5u8wdxTIGg" key="addedInVersion" value="97"/>
          </eAnnotations>
          <language>OCL</language>
          <body>uml::Comment.allInstances()->select(comm| not comm.getAppliedStereotype('CTIE_Profile_Final::statement').oclIsUndefined() and comm.annotatedElement->exists( el |el = self.base_OpaqueAction.oclAsType(uml::Element)))->size() =1&#xA;&#xA;</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_xhG53U36EeSS5u8wdxTIGg" general="_xhG5yE36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG53k36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG53036EeSS5u8wdxTIGg" key="addedInVersion" value="7"/>
        </eAnnotations>
      </generalization>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhG54E36EeSS5u8wdxTIGg" name="context">
      <eAnnotations xmi:id="_xhG54U36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhG54k36EeSS5u8wdxTIGg" key="addedInVersion" value="15"/>
      </eAnnotations>
      <ownedRule xmi:id="_xhG54036EeSS5u8wdxTIGg" name="unique_context" constrainedElement="_xhG54E36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG55E36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG55U36EeSS5u8wdxTIGg" key="addedInVersion" value="81"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhG55k36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG55036EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG56E36EeSS5u8wdxTIGg" key="addedInVersion" value="81"/>
          </eAnnotations>
          <language>OCL</language>
          <body>not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;</body>
        </specification>
      </ownedRule>
      <ownedRule xmi:id="_xhG56U36EeSS5u8wdxTIGg" name="context_must_be_specified" constrainedElement="_xhG54E36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhG56k36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhG56036EeSS5u8wdxTIGg" key="addedInVersion" value="314"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhG57E36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhG57U36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhG57k36EeSS5u8wdxTIGg" key="addedInVersion" value="314"/>
          </eAnnotations>
          <language>OCL</language>
          <body>not self.base_Activity.getAppliedStereotype('CTIE_Profile_Final::context').oclIsUndefined()&#xA;&#xA;implies&#xA;&#xA;self.context_class.size()>0&#xA;</body>
        </specification>
      </ownedRule>
      <ownedAttribute xmi:id="_xhG57036EeSS5u8wdxTIGg" name="context_class" visibility="public">
        <eAnnotations xmi:id="_xhHeIE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHeIU36EeSS5u8wdxTIGg" key="addedInVersion" value="26"/>
        </eAnnotations>
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
      </ownedAttribute>
      <ownedAttribute xmi:id="_xhHeIk36EeSS5u8wdxTIGg" name="base_Activity" association="_xhHfM036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHeI036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHeJE36EeSS5u8wdxTIGg" key="addedInVersion" value="311"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Activity"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Enumeration" xmi:id="_xhHeJU36EeSS5u8wdxTIGg" name="Agent_Role">
      <eAnnotations xmi:id="_xhHeJk36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHeJ036EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
      </eAnnotations>
      <ownedLiteral xmi:id="_xhHeKE36EeSS5u8wdxTIGg" name="NONE" classifier="_xhHeJU36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHeKU36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHeKk36EeSS5u8wdxTIGg" key="addedInVersion" value="131"/>
        </eAnnotations>
      </ownedLiteral>
      <ownedLiteral xmi:id="_xhHeK036EeSS5u8wdxTIGg" name="OFFICER" classifier="_xhHeJU36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHeLE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHeLU36EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
        </eAnnotations>
      </ownedLiteral>
      <ownedLiteral xmi:id="_xhHeLk36EeSS5u8wdxTIGg" name="OTHER" classifier="_xhHeJU36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHeL036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHeME36EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
        </eAnnotations>
      </ownedLiteral>
    </packagedElement>
    <packagedElement xmi:type="uml:Enumeration" xmi:id="_xhHeMU36EeSS5u8wdxTIGg" name="Value_Type">
      <eAnnotations xmi:id="_xhHeMk36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHeM036EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
      </eAnnotations>
      <ownedLiteral xmi:id="_xhHeNE36EeSS5u8wdxTIGg" name="NONE" classifier="_xhHeMU36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHeNU36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHeNk36EeSS5u8wdxTIGg" key="addedInVersion" value="132"/>
        </eAnnotations>
      </ownedLiteral>
      <ownedLiteral xmi:id="_xhHeN036EeSS5u8wdxTIGg" name="FIXED_VALUE" classifier="_xhHeMU36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHeOE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHeOU36EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
        </eAnnotations>
      </ownedLiteral>
      <ownedLiteral xmi:id="_xhHeOk36EeSS5u8wdxTIGg" name="LOOKUP_TABLE" classifier="_xhHeMU36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHeO036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHePE36EeSS5u8wdxTIGg" key="addedInVersion" value="20"/>
        </eAnnotations>
      </ownedLiteral>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhHePU36EeSS5u8wdxTIGg" name="expression" isAbstract="true">
      <eAnnotations xmi:id="_xhHePk36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHeP036EeSS5u8wdxTIGg" key="addedInVersion" value="21"/>
      </eAnnotations>
      <ownedRule xmi:id="_xhHeQE36EeSS5u8wdxTIGg" name="logical_expression_unique" constrainedElement="_xhHePU36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHeQU36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHeQk36EeSS5u8wdxTIGg" key="addedInVersion" value="93"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhHeQ036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhHeRE36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhHeRU36EeSS5u8wdxTIGg" key="addedInVersion" value="93"/>
          </eAnnotations>
          <language>OCL</language>
          <body>self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::statement')->notEmpty() xor &#xA;self.base_Comment.getAppliedStereotype('CTIE_Profile_Final::formula')->notEmpty()&#xA;&#xA;&#xA;&#xA;&#xA;</body>
        </specification>
      </ownedRule>
      <ownedAttribute xmi:id="_xhHeRk36EeSS5u8wdxTIGg" name="constraint" visibility="public" aggregation="shared" association="_xhHedk36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHeR036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHeSE36EeSS5u8wdxTIGg" key="addedInVersion" value="21"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Constraint"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_xhHeSU36EeSS5u8wdxTIGg" value="1">
          <eAnnotations xmi:id="_xhHeSk36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhHeS036EeSS5u8wdxTIGg" key="addedInVersion" value="21"/>
          </eAnnotations>
        </upperValue>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_xhHeTE36EeSS5u8wdxTIGg" value="1">
          <eAnnotations xmi:id="_xhHeTU36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhHeTk36EeSS5u8wdxTIGg" key="addedInVersion" value="21"/>
          </eAnnotations>
        </lowerValue>
      </ownedAttribute>
      <ownedAttribute xmi:id="_xhHeT036EeSS5u8wdxTIGg" name="base_Comment" association="_xhHegk36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHeUE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHeUU36EeSS5u8wdxTIGg" key="addedInVersion" value="30"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Comment"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhHeUk36EeSS5u8wdxTIGg" name="formula">
      <eAnnotations xmi:id="_xhHeU036EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHeVE36EeSS5u8wdxTIGg" key="addedInVersion" value="21"/>
      </eAnnotations>
      <ownedRule xmi:id="_xhHeVU36EeSS5u8wdxTIGg" name="for_each_formula_the_attribute_constraint_should_be_defined" constrainedElement="_xhHeUk36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHeVk36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHeV036EeSS5u8wdxTIGg" key="addedInVersion" value="92"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhHeWE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhHeWU36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhHeWk36EeSS5u8wdxTIGg" key="addedInVersion" value="92"/>
          </eAnnotations>
          <language>OCL</language>
          <body>self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty() &#xA;&#xA;&#xA;&#xA;</body>
        </specification>
      </ownedRule>
      <ownedRule xmi:id="_xhHeW036EeSS5u8wdxTIGg" name="each_formula_should_annotate_an_activity_node_with_calculate_stereotype" constrainedElement="_xhHeUk36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHeXE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHeXU36EeSS5u8wdxTIGg" key="addedInVersion" value="157"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhHeXk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhHeX036EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhHeYE36EeSS5u8wdxTIGg" key="addedInVersion" value="157"/>
          </eAnnotations>
          <language>OCL</language>
          <body>self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::calculate')->notEmpty())->size() = 1</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_xhHeYU36EeSS5u8wdxTIGg" general="_xhHePU36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHeYk36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHeY036EeSS5u8wdxTIGg" key="addedInVersion" value="21"/>
        </eAnnotations>
      </generalization>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhHeZE36EeSS5u8wdxTIGg" name="statement">
      <eAnnotations xmi:id="_xhHeZU36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHeZk36EeSS5u8wdxTIGg" key="addedInVersion" value="21"/>
      </eAnnotations>
      <ownedRule xmi:id="_xhHeZ036EeSS5u8wdxTIGg" name="for_each_assert_the_attribute_constraint_should_be_defined" constrainedElement="_xhHeZE36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHeaE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHeaU36EeSS5u8wdxTIGg" key="addedInVersion" value="91"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhHeak36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhHea036EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhHebE36EeSS5u8wdxTIGg" key="addedInVersion" value="91"/>
          </eAnnotations>
          <language>OCL</language>
          <body>self.base_Comment.annotatedElement->select(el|el.getAppliedStereotype('CTIE_Profile_Final::assert')->notEmpty())->size() = 1 implies&#xA;self.base_Comment.constraint->notEmpty()&#xA;&#xA;</body>
        </specification>
      </ownedRule>
      <ownedRule xmi:id="_xhHebU36EeSS5u8wdxTIGg" name="each_constraint_should_annotate_an_activity_node_with_assert_stereotype" constrainedElement="_xhHeZE36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHebk36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHeb036EeSS5u8wdxTIGg" key="addedInVersion" value="158"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhHecE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhHecU36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhHeck36EeSS5u8wdxTIGg" key="addedInVersion" value="158"/>
          </eAnnotations>
          <language>OCL</language>
          <body>self.base_Comment.annotatedElement->select(el|el.isStereotypeApplied(el.getAppliedStereotype('CTIE_Profile_Final::assert')))->size() = 1&#xA;</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_xhHec036EeSS5u8wdxTIGg" general="_xhHePU36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHedE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHedU36EeSS5u8wdxTIGg" key="addedInVersion" value="21"/>
        </eAnnotations>
      </generalization>
    </packagedElement>
    <packagedElement xmi:type="uml:Association" xmi:id="_xhHedk36EeSS5u8wdxTIGg" name="specified by" memberEnd="_xhHeRk36EeSS5u8wdxTIGg _xhHeeU36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHed036EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHeeE36EeSS5u8wdxTIGg" key="addedInVersion" value="21"/>
      </eAnnotations>
      <ownedEnd xmi:id="_xhHeeU36EeSS5u8wdxTIGg" name="logical_expression" visibility="private" type="_xhHePU36EeSS5u8wdxTIGg" association="_xhHedk36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHeek36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHee036EeSS5u8wdxTIGg" key="addedInVersion" value="21"/>
        </eAnnotations>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_xhHefE36EeSS5u8wdxTIGg" value="1">
          <eAnnotations xmi:id="_xhHefU36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhHefk36EeSS5u8wdxTIGg" key="addedInVersion" value="21"/>
          </eAnnotations>
        </upperValue>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_xhHef036EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhHegE36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhHegU36EeSS5u8wdxTIGg" key="addedInVersion" value="21"/>
          </eAnnotations>
        </lowerValue>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHegk36EeSS5u8wdxTIGg" name="Comment_logical_expression" memberEnd="_xhHehU36EeSS5u8wdxTIGg _xhHeT036EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHeg036EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHehE36EeSS5u8wdxTIGg" key="addedInVersion" value="30"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHehU36EeSS5u8wdxTIGg" name="extension_logical_expression" type="_xhHePU36EeSS5u8wdxTIGg" aggregation="composite" association="_xhHegk36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHehk36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHeh036EeSS5u8wdxTIGg" key="addedInVersion" value="30"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHeiE36EeSS5u8wdxTIGg" name="Comment_query" memberEnd="_xhHei036EeSS5u8wdxTIGg _xhG5R036EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHeiU36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHeik36EeSS5u8wdxTIGg" key="addedInVersion" value="67"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHei036EeSS5u8wdxTIGg" name="extension_query" type="_xhG48E36EeSS5u8wdxTIGg" aggregation="composite" association="_xhHeiE36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHejE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHejU36EeSS5u8wdxTIGg" key="addedInVersion" value="67"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHejk36EeSS5u8wdxTIGg" name="OpaqueAction_activity" memberEnd="_xhHekU36EeSS5u8wdxTIGg _xhG50U36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHej036EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHekE36EeSS5u8wdxTIGg" key="addedInVersion" value="90"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHekU36EeSS5u8wdxTIGg" name="extension_activity" type="_xhG5yE36EeSS5u8wdxTIGg" aggregation="composite" association="_xhHejk36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHekk36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHek036EeSS5u8wdxTIGg" key="addedInVersion" value="90"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhHelE36EeSS5u8wdxTIGg" name="flow">
      <eAnnotations xmi:id="_xhHelU36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHelk36EeSS5u8wdxTIGg" key="addedInVersion" value="183"/>
      </eAnnotations>
      <ownedRule xmi:id="_xhHel036EeSS5u8wdxTIGg" name="action_nodes_authorization" constrainedElement="_xhHelE36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHemE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHemU36EeSS5u8wdxTIGg" key="addedInVersion" value="184"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhHemk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhHem036EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhHenE36EeSS5u8wdxTIGg" key="addedInVersion" value="184"/>
          </eAnnotations>
          <language>OCL</language>
          <body>uml::CallBehaviorAction.allInstances()->size() = 0 and&#xA;uml::CallOperationAction.allInstances()->size() = 0 and&#xA;uml::AcceptEventAction.allInstances()->size() = 0 and&#xA;uml::SendSignalAction.allInstances()->size() = 0 and&#xA;uml::VariableAction.allInstances()->size() = 0  and&#xA;uml::StructuredActivityNode.allInstances()->select(n|n.oclIsTypeOf(uml::ObjectFlow) and not n.isStereotypeApplied(n.getAppliedStereotype('CTIE_Profile_Final::flow')))->size() = 0&#xA;&#xA;&#xA;&#xA;&#xA;</body>
        </specification>
      </ownedRule>
      <ownedRule xmi:id="_xhHenU36EeSS5u8wdxTIGg" name="control_nodes_authorization" constrainedElement="_xhHelE36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHenk36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHen036EeSS5u8wdxTIGg" key="addedInVersion" value="186"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhHeoE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhHeoU36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhHeok36EeSS5u8wdxTIGg" key="addedInVersion" value="186"/>
          </eAnnotations>
          <language>OCL</language>
          <body>uml::ForkNode.allInstances()->size() = 0 and&#xA;uml::JoinNode.allInstances()->size() = 0 and&#xA;uml::MergeNode.allInstances()->size() = 0&#xA;</body>
        </specification>
      </ownedRule>
      <ownedRule xmi:id="_xhHeo036EeSS5u8wdxTIGg" name="object_nodes_auhtoization" constrainedElement="_xhHelE36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHepE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHepU36EeSS5u8wdxTIGg" key="addedInVersion" value="187"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhHepk36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhHep036EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhHeqE36EeSS5u8wdxTIGg" key="addedInVersion" value="187"/>
          </eAnnotations>
          <language>OCL</language>
          <body>uml::DataStoreNode.allInstances()->size() = 0 and&#xA;uml::ValuePin.allInstances()->size() = 0&#xA;&#xA;&#xA;</body>
        </specification>
      </ownedRule>
      <ownedRule xmi:id="_xhHeqU36EeSS5u8wdxTIGg" name="containment_elements_autorization" constrainedElement="_xhHelE36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHeqk36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHeq036EeSS5u8wdxTIGg" key="addedInVersion" value="191"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_xhHerE36EeSS5u8wdxTIGg">
          <eAnnotations xmi:id="_xhHerU36EeSS5u8wdxTIGg" source="uml2.extensions">
            <details xmi:id="_xhHerk36EeSS5u8wdxTIGg" key="addedInVersion" value="191"/>
          </eAnnotations>
          <language>OCL</language>
          <body>uml::ActivityPartition.allInstances()->size() = 0  and&#xA;uml::ExpansionRegion.allInstances()->select(er | er.mode &lt;> uml::ExpansionKind::iterative)->size() = 0 and&#xA;uml::InterruptibleActivityRegion.allInstances()->size() = 0 and&#xA;uml::ExceptionHandler.allInstances()->size() = 0 &#xA;</body>
        </specification>
      </ownedRule>
      <ownedAttribute xmi:id="_xhHer036EeSS5u8wdxTIGg" name="base_FinalNode" association="_xhHe0036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHesE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHesU36EeSS5u8wdxTIGg" key="addedInVersion" value="235"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#FinalNode"/>
      </ownedAttribute>
      <ownedAttribute xmi:id="_xhHesk36EeSS5u8wdxTIGg" name="base_ObjectFlow" association="_xhHe2U36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHes036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHetE36EeSS5u8wdxTIGg" key="addedInVersion" value="235"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#ObjectFlow"/>
      </ownedAttribute>
      <ownedAttribute xmi:id="_xhHetU36EeSS5u8wdxTIGg" name="base_ControlFlow" association="_xhHe3036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHetk36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHet036EeSS5u8wdxTIGg" key="addedInVersion" value="235"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#ControlFlow"/>
      </ownedAttribute>
      <ownedAttribute xmi:id="_xhHeuE36EeSS5u8wdxTIGg" name="base_InitialNode" association="_xhHe5U36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHeuU36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHeuk36EeSS5u8wdxTIGg" key="addedInVersion" value="238"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#InitialNode"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHeu036EeSS5u8wdxTIGg" name="Pin_source" memberEnd="_xhHevk36EeSS5u8wdxTIGg _xhG5nk36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHevE36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHevU36EeSS5u8wdxTIGg" key="addedInVersion" value="201"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHevk36EeSS5u8wdxTIGg" name="extension_source" type="_xhG5g036EeSS5u8wdxTIGg" aggregation="composite" association="_xhHeu036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHev036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHewE36EeSS5u8wdxTIGg" key="addedInVersion" value="201"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHewU36EeSS5u8wdxTIGg" name="Pin_direction" memberEnd="_xhHexE36EeSS5u8wdxTIGg _xhG5WU36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHewk36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHew036EeSS5u8wdxTIGg" key="addedInVersion" value="201"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHexE36EeSS5u8wdxTIGg" name="extension_direction" type="_xhG5Sk36EeSS5u8wdxTIGg" aggregation="composite" association="_xhHewU36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHexU36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHexk36EeSS5u8wdxTIGg" key="addedInVersion" value="201"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHex036EeSS5u8wdxTIGg" name="ActivityParameterNode_source" memberEnd="_xhHeyk36EeSS5u8wdxTIGg _xhG5oU36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHeyE36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHeyU36EeSS5u8wdxTIGg" key="addedInVersion" value="201"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHeyk36EeSS5u8wdxTIGg" name="extension_source" type="_xhG5g036EeSS5u8wdxTIGg" aggregation="composite" association="_xhHex036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHey036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHezE36EeSS5u8wdxTIGg" key="addedInVersion" value="201"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHezU36EeSS5u8wdxTIGg" name="ActivityParameterNode_direction" memberEnd="_xhHe0E36EeSS5u8wdxTIGg _xhG5XE36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHezk36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHez036EeSS5u8wdxTIGg" key="addedInVersion" value="201"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHe0E36EeSS5u8wdxTIGg" name="extension_direction" type="_xhG5Sk36EeSS5u8wdxTIGg" aggregation="composite" association="_xhHezU36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHe0U36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHe0k36EeSS5u8wdxTIGg" key="addedInVersion" value="201"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHe0036EeSS5u8wdxTIGg" name="FinalNode_CTIEProfile" memberEnd="_xhHe1k36EeSS5u8wdxTIGg _xhHer036EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHe1E36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHe1U36EeSS5u8wdxTIGg" key="addedInVersion" value="235"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHe1k36EeSS5u8wdxTIGg" name="extension_CTIEProfile" type="_xhHelE36EeSS5u8wdxTIGg" aggregation="composite" association="_xhHe0036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHe1036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHe2E36EeSS5u8wdxTIGg" key="addedInVersion" value="235"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHe2U36EeSS5u8wdxTIGg" name="ObjectFlow_CTIEProfile" memberEnd="_xhHe3E36EeSS5u8wdxTIGg _xhHesk36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHe2k36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHe2036EeSS5u8wdxTIGg" key="addedInVersion" value="235"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHe3E36EeSS5u8wdxTIGg" name="extension_CTIEProfile" type="_xhHelE36EeSS5u8wdxTIGg" aggregation="composite" association="_xhHe2U36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHe3U36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHe3k36EeSS5u8wdxTIGg" key="addedInVersion" value="235"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHe3036EeSS5u8wdxTIGg" name="ControlFlow_CTIEProfile" memberEnd="_xhHe4k36EeSS5u8wdxTIGg _xhHetU36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHe4E36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHe4U36EeSS5u8wdxTIGg" key="addedInVersion" value="235"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHe4k36EeSS5u8wdxTIGg" name="extension_CTIEProfile" type="_xhHelE36EeSS5u8wdxTIGg" aggregation="composite" association="_xhHe3036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHe4036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHe5E36EeSS5u8wdxTIGg" key="addedInVersion" value="235"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHe5U36EeSS5u8wdxTIGg" name="InitialNode_CTIEProfile" memberEnd="_xhHe6E36EeSS5u8wdxTIGg _xhHeuE36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHe5k36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHe5036EeSS5u8wdxTIGg" key="addedInVersion" value="238"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHe6E36EeSS5u8wdxTIGg" name="extension_CTIEProfile" type="_xhHelE36EeSS5u8wdxTIGg" aggregation="composite" association="_xhHe5U36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHe6U36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHe6k36EeSS5u8wdxTIGg" key="addedInVersion" value="238"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhHe6036EeSS5u8wdxTIGg" name="procedure">
      <eAnnotations xmi:id="_xhHe7E36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHe7U36EeSS5u8wdxTIGg" key="addedInVersion" value="239"/>
      </eAnnotations>
      <generalization xmi:id="_xhHe7k36EeSS5u8wdxTIGg" general="_xhHfME36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHe7036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHe8E36EeSS5u8wdxTIGg" key="addedInVersion" value="255"/>
        </eAnnotations>
      </generalization>
      <ownedAttribute xmi:id="_xhHe8U36EeSS5u8wdxTIGg" name="base_Activity" association="_xhHe9E36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHe8k36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHe8036EeSS5u8wdxTIGg" key="addedInVersion" value="239"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Activity"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHe9E36EeSS5u8wdxTIGg" name="Activity_Computation" memberEnd="_xhHe9036EeSS5u8wdxTIGg _xhHe8U36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHe9U36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHe9k36EeSS5u8wdxTIGg" key="addedInVersion" value="239"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHe9036EeSS5u8wdxTIGg" name="extension_Computation" type="_xhHe6036EeSS5u8wdxTIGg" aggregation="composite" association="_xhHe9E36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHe-E36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHe-U36EeSS5u8wdxTIGg" key="addedInVersion" value="239"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhHe-k36EeSS5u8wdxTIGg" name="decision">
      <eAnnotations xmi:id="_xhHe-036EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHe_E36EeSS5u8wdxTIGg" key="addedInVersion" value="239"/>
      </eAnnotations>
      <ownedAttribute xmi:id="_xhHe_U36EeSS5u8wdxTIGg" name="base_DecisionNode" association="_xhHfA036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHe_k36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHe_036EeSS5u8wdxTIGg" key="addedInVersion" value="239"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#DecisionNode"/>
      </ownedAttribute>
      <ownedAttribute xmi:id="_xhHfAE36EeSS5u8wdxTIGg" name="base_MergeNode" association="_xhHfP036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHfAU36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHfAk36EeSS5u8wdxTIGg" key="addedInVersion" value="326"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#MergeNode"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHfA036EeSS5u8wdxTIGg" name="DecisionNode_Condition" memberEnd="_xhHfBk36EeSS5u8wdxTIGg _xhHe_U36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHfBE36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHfBU36EeSS5u8wdxTIGg" key="addedInVersion" value="239"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHfBk36EeSS5u8wdxTIGg" name="extension_Condition" type="_xhHe-k36EeSS5u8wdxTIGg" aggregation="composite" association="_xhHfA036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHfB036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHfCE36EeSS5u8wdxTIGg" key="addedInVersion" value="239"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhHfCU36EeSS5u8wdxTIGg" name="intermediate">
      <eAnnotations xmi:id="_xhHfCk36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHfC036EeSS5u8wdxTIGg" key="addedInVersion" value="239"/>
      </eAnnotations>
      <ownedAttribute xmi:id="_xhHfDE36EeSS5u8wdxTIGg" name="base_CentralBufferNode" association="_xhHfD036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHfDU36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHfDk36EeSS5u8wdxTIGg" key="addedInVersion" value="239"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#CentralBufferNode"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHfD036EeSS5u8wdxTIGg" name="CentralBufferNode_DataBuffer" memberEnd="_xhHfEk36EeSS5u8wdxTIGg _xhHfDE36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHfEE36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHfEU36EeSS5u8wdxTIGg" key="addedInVersion" value="239"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHfEk36EeSS5u8wdxTIGg" name="extension_DataBuffer" type="_xhHfCU36EeSS5u8wdxTIGg" aggregation="composite" association="_xhHfD036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHfE036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHfFE36EeSS5u8wdxTIGg" key="addedInVersion" value="239"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhHfFU36EeSS5u8wdxTIGg" name="iterative">
      <eAnnotations xmi:id="_xhHfFk36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHfF036EeSS5u8wdxTIGg" key="addedInVersion" value="255"/>
      </eAnnotations>
      <generalization xmi:id="_xhHfGE36EeSS5u8wdxTIGg" general="_xhHfME36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHfGU36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHfGk36EeSS5u8wdxTIGg" key="addedInVersion" value="255"/>
        </eAnnotations>
      </generalization>
      <ownedAttribute xmi:id="_xhHfG036EeSS5u8wdxTIGg" name="base_ExpansionRegion" association="_xhHfHk36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHfHE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHfHU36EeSS5u8wdxTIGg" key="addedInVersion" value="255"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#ExpansionRegion"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHfHk36EeSS5u8wdxTIGg" name="ExpansionRegion_iteration" memberEnd="_xhHfIU36EeSS5u8wdxTIGg _xhHfG036EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHfH036EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHfIE36EeSS5u8wdxTIGg" key="addedInVersion" value="255"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHfIU36EeSS5u8wdxTIGg" name="extension_iteration" type="_xhHfFU36EeSS5u8wdxTIGg" aggregation="composite" association="_xhHfHk36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHfIk36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHfI036EeSS5u8wdxTIGg" key="addedInVersion" value="255"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhHfJE36EeSS5u8wdxTIGg" name="iterator">
      <eAnnotations xmi:id="_xhHfJU36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHfJk36EeSS5u8wdxTIGg" key="addedInVersion" value="255"/>
      </eAnnotations>
      <ownedAttribute xmi:id="_xhHfJ036EeSS5u8wdxTIGg" name="base_ExpansionNode" association="_xhHfKk36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHfKE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHfKU36EeSS5u8wdxTIGg" key="addedInVersion" value="255"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#ExpansionNode"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHfKk36EeSS5u8wdxTIGg" name="ExpansionNode_iterative_object" memberEnd="_xhHfLU36EeSS5u8wdxTIGg _xhHfJ036EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHfK036EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHfLE36EeSS5u8wdxTIGg" key="addedInVersion" value="255"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHfLU36EeSS5u8wdxTIGg" name="extension_iterative_object" type="_xhHfJE36EeSS5u8wdxTIGg" aggregation="composite" association="_xhHfKk36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHfLk36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHfL036EeSS5u8wdxTIGg" key="addedInVersion" value="255"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhHfME36EeSS5u8wdxTIGg" name="prescription" isAbstract="true">
      <eAnnotations xmi:id="_xhHfMU36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHfMk36EeSS5u8wdxTIGg" key="addedInVersion" value="255"/>
      </eAnnotations>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHfM036EeSS5u8wdxTIGg" name="Activity_context" memberEnd="_xhHfNk36EeSS5u8wdxTIGg _xhHeIk36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHfNE36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHfNU36EeSS5u8wdxTIGg" key="addedInVersion" value="311"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHfNk36EeSS5u8wdxTIGg" name="extension_context" type="_xhG54E36EeSS5u8wdxTIGg" aggregation="composite" association="_xhHfM036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHfN036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHfOE36EeSS5u8wdxTIGg" key="addedInVersion" value="311"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHfOU36EeSS5u8wdxTIGg" name="Activity_fromlaw" memberEnd="_xhHfPE36EeSS5u8wdxTIGg _xhG5sE36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHfOk36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHfO036EeSS5u8wdxTIGg" key="addedInVersion" value="317"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHfPE36EeSS5u8wdxTIGg" name="extension_fromlaw" type="_xhG5qk36EeSS5u8wdxTIGg" aggregation="composite" association="_xhHfOU36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHfPU36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHfPk36EeSS5u8wdxTIGg" key="addedInVersion" value="317"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHfP036EeSS5u8wdxTIGg" name="MergeNode_decision" memberEnd="_xhHfQk36EeSS5u8wdxTIGg _xhHfAE36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHfQE36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHfQU36EeSS5u8wdxTIGg" key="addedInVersion" value="326"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHfQk36EeSS5u8wdxTIGg" name="extension_decision" type="_xhHe-k36EeSS5u8wdxTIGg" aggregation="composite" association="_xhHfP036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHfQ036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHfRE36EeSS5u8wdxTIGg" key="addedInVersion" value="326"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhHfRU36EeSS5u8wdxTIGg" name="update">
      <eAnnotations xmi:id="_xhHfRk36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHfR036EeSS5u8wdxTIGg" key="addedInVersion" value="331"/>
      </eAnnotations>
      <generalization xmi:id="_xhHfSE36EeSS5u8wdxTIGg" general="_xhG5yE36EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHfSU36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHfSk36EeSS5u8wdxTIGg" key="addedInVersion" value="331"/>
        </eAnnotations>
      </generalization>
      <ownedAttribute xmi:id="_xhHfS036EeSS5u8wdxTIGg" name="variable_to_update" visibility="public">
        <eAnnotations xmi:id="_xhHfTE36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHfTU36EeSS5u8wdxTIGg" key="addedInVersion" value="331"/>
        </eAnnotations>
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
      </ownedAttribute>
      <ownedAttribute xmi:id="_xhHfTk36EeSS5u8wdxTIGg" name="value" visibility="public">
        <eAnnotations xmi:id="_xhHfT036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHfUE36EeSS5u8wdxTIGg" key="addedInVersion" value="331"/>
        </eAnnotations>
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_xhHfUU36EeSS5u8wdxTIGg" name="cumulative">
      <eAnnotations xmi:id="_xhHfUk36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHfU036EeSS5u8wdxTIGg" key="addedInVersion" value="333"/>
      </eAnnotations>
      <ownedAttribute xmi:id="_xhHfVE36EeSS5u8wdxTIGg" name="base_ExpansionRegion" association="_xhHfV036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHfVU36EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHfVk36EeSS5u8wdxTIGg" key="addedInVersion" value="333"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#ExpansionRegion"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_xhHfV036EeSS5u8wdxTIGg" name="ExpansionRegion_Stereotype1" memberEnd="_xhHfWk36EeSS5u8wdxTIGg _xhHfVE36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHfWE36EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHfWU36EeSS5u8wdxTIGg" key="addedInVersion" value="333"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_xhHfWk36EeSS5u8wdxTIGg" name="extension_Stereotype1" type="_xhHfUU36EeSS5u8wdxTIGg" aggregation="composite" association="_xhHfV036EeSS5u8wdxTIGg">
        <eAnnotations xmi:id="_xhHfW036EeSS5u8wdxTIGg" source="uml2.extensions">
          <details xmi:id="_xhHfXE36EeSS5u8wdxTIGg" key="addedInVersion" value="333"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <profileApplication xmi:id="_xhHfXU36EeSS5u8wdxTIGg">
      <eAnnotations xmi:id="_xhHfXk36EeSS5u8wdxTIGg" source="http://www.eclipse.org/uml2/2.0.0/UML">
        <references xmi:type="ecore:EPackage" href="ProfileBase.profile.uml#_xf7zN036EeSS5u8wdxTIGg"/>
      </eAnnotations>
      <eAnnotations xmi:id="_xhHfX036EeSS5u8wdxTIGg" source="uml2.extensions">
        <details xmi:id="_xhHfYE36EeSS5u8wdxTIGg" key="addedInVersion" value="1"/>
      </eAnnotations>
      <appliedProfile href="ProfileBase.profile.uml#_xf7zNU36EeSS5u8wdxTIGg"/>
    </profileApplication>
  </uml:Profile>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfYU36EeSS5u8wdxTIGg" messageKey="Only one stereotype of type &lt;&lt;source>> can be applied to an Object Node" base_Constraint="_xhG5hk36EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfYk36EeSS5u8wdxTIGg" messageKey="Only one steretotype &lt;&lt;context>> applied to an activity parameter node is allowed per activity" base_Constraint="_xhG54036EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfY036EeSS5u8wdxTIGg" messageKey="For stereotype &lt;&lt;fromlaw>> the attributes: source, query type and parameters, if query type is LOOKUP TABLE, must be defined" base_Constraint="_xhG48036EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfZE36EeSS5u8wdxTIGg" messageKey="For stereotype &lt;&lt;fromagent>> the agent type and the question attribute must be defined" base_Constraint="_xhG4-U36EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfZU36EeSS5u8wdxTIGg" messageKey="For stereotype &lt;&lt;fromrecord>> the attribute contraint must be defined (you need to give the OCL query on how to get the value of the parameter)" base_Constraint="_xhG4_036EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfZk36EeSS5u8wdxTIGg" messageKey="Only one stereotype &lt;&lt;query>> can be applied to a Comment of an Object Node with stereotype of type &lt;&lt;source>>" base_Constraint="_xhG5BU36EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfZ036EeSS5u8wdxTIGg" messageKey="You cannot apply simulataniousely stereotypes &lt;&lt;calculate>> and &lt;&lt;assert>>" base_Constraint="_xhG5y036EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfaE36EeSS5u8wdxTIGg" messageKey="For each stereotype &lt;&lt;assert>> the attribute constraint of the comment stereotype by &lt;&lt;constraint>> cannot be empty" base_Constraint="_xhHeZ036EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfaU36EeSS5u8wdxTIGg" messageKey="For each stereotype &lt;&lt;calculate>> the attribute constraint of the comment stereotype by &lt;&lt;formula>> cannot be empty" base_Constraint="_xhHeVU36EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfak36EeSS5u8wdxTIGg" messageKey="We can apply either the stereotype &lt;&lt;constraint>> or &lt;&lt;formula>>, not both" base_Constraint="_xhHeQE36EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfa036EeSS5u8wdxTIGg" messageKey="You need to define a constraint to be checked" base_Constraint="_xhG51036EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfbE36EeSS5u8wdxTIGg" messageKey="You need to define a constraint in a that calculate the output parameter" base_Constraint="_xhG45036EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfbU36EeSS5u8wdxTIGg" messageKey="Only one stereotype &lt;&lt;query>> can be applied to a Comment of an Object Node with stereotype of type &lt;&lt;source>> (source constraint)" base_Constraint="_xhG5jE36EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfbk36EeSS5u8wdxTIGg" messageKey="Each comment with stereotype &lt;&lt;formula>> must be applied to an activity node sith stereotype &lt;&lt;calculate>>" base_Constraint="_xhHeW036EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfb036EeSS5u8wdxTIGg" messageKey="Each comment with stereotype &lt;&lt;constraint>> must be applied to an activity node sith stereotype &lt;&lt;assert>>" base_Constraint="_xhHebU36EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfcE36EeSS5u8wdxTIGg" messageKey="Object Node can be only in or out not both" base_Constraint="_xhG5TU36EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfcU36EeSS5u8wdxTIGg" messageKey="Only Opaque Action Nodes are authorized" base_Constraint="_xhHel036EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfck36EeSS5u8wdxTIGg" messageKey="Only Decision Nodes are authorized" base_Constraint="_xhHenU36EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfc036EeSS5u8wdxTIGg" messageKey="Only Pins and Activity Parameter Nodes are authorized" base_Constraint="_xhHeo036EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfdE36EeSS5u8wdxTIGg" messageKey="Only Iterative Expansion Regions are authorized" base_Constraint="_xhHeqU36EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfdU36EeSS5u8wdxTIGg" messageKey="An Activity Parameter Node with direction IN must have applied stereotype &lt;&lt;in>>" base_Constraint="_xhG5Yk36EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfdk36EeSS5u8wdxTIGg" messageKey="Pin with stereotype &lt;&lt;in>> must be type of Input Pin" base_Constraint="_xhG5aE36EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfd036EeSS5u8wdxTIGg" messageKey="Pin with stereotype &lt;&lt;out>> must be type of Output Pin" base_Constraint="_xhG5dE36EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfeE36EeSS5u8wdxTIGg" messageKey="An Activity Parameter Node with direction IN must have applied stereotype &lt;&lt;in>>" base_Constraint="_xhG5ek36EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfeU36EeSS5u8wdxTIGg" base_Constraint="_xhG5kk36EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfek36EeSS5u8wdxTIGg" base_Constraint="_xhG5mE36EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHfe036EeSS5u8wdxTIGg" base_Constraint="_xhG5U036EeSS5u8wdxTIGg"/>
  <ProfileBase:ProfileConstraint xmi:id="_xhHffE36EeSS5u8wdxTIGg" messageKey="The context of the activity must be specified" base_Constraint="_xhG56U36EeSS5u8wdxTIGg"/>
</xmi:XMI>
